zoukankan      html  css  js  c++  java
  • typedef

    1: typedef 为某种类型引入同义词。

    格式:

    typedef type synonym;
    定义 synonym 为名为 type 的类型的另一名字。

    2: unsigned(无符号型)

    保存大于等于零的值的整型。

    3: void type(空类型)

    用于特殊目的的没有操作也没有值的类型。不可能定义一个 void 类型的
    变量。最经常用作不返回结果的函数的返回类型。

    4: 命名空间的 using 声明

    在本章之前看到的程序,都是通过直接说明名字来自 std 命名空间,来引
    用标准库中的名字。例如,需要从标准输入读取数据时,就用 std::cin。这些
    名字都用了:: 操作符,该操作符是作用域操作符。它的含义是
    右操作数的名字可以在左操作数的作用域中找到。因此,std::cin 的意思是说
    所需要名字 cin 是在命名空间 std 中定义的。显然,通过这种符号引用标准库
    名字的方式是非常麻烦的。

    幸运的是,C++ 提供了更简洁的方式来使用命名空间成员。本节将介绍一种
    最安全的机制:using 声明。
    使用 using 声明可以在不需要加前缀 namespace_name:: 的情况下访问命
    名空间中的名字。using 声明的形式如下:
    using namespace::name;
    一旦使用了 using 声明,我们就可以直接引用名字,而不需要再引用该名
    字的命名空间。
    #include <string>
    #include <iostream>
    // using declarations states our intent to use these names from the
    namespace std
    using std::cin;
    using std::string;
    int main()
    {
    string s; // ok: string is now a synonym for std::string
    cin >> s; // ok: cin is now a synonym for std::cin
    cout << s; // error: no using declaration; we must use full
    name
    std::cout << s; // ok: explicitly use cout from namepsace std
    }
    没有 using 声明,而直接使用命名空间中名字的未限定版本是错误的,尽
    管有些编译器也许无法检测出这种错误。

    每个名字都需要一个 using 声明
    一个 using 声明一次只能作用于一个命名空间成员。using 声明可用来明
    确指定在程序中用到的命名空间中的名字,如果希望使用 std(或其他的命名空
    间)中的几个名字,则必须为要用到的每个名字都提供一个 using 声明。例如,
    利用 using 声明可以这样重新编写第 1.2.2 节中的加法程序:
    #include <iostream>
    // using declarations for names from the standard library
    using std::cin;
    using std::cout;
    using std::endl;
    int main()
    {

    cout << "Enter two numbers:" << endl;
    int v1, v2;
    cin >> v1 >> v2;
    cout << "The sum of " << v1
    << " and " << v2
    << " is " << v1 + v2 << endl;
    return 0;
    }
    对 cin,cout 和 endl 进行 using 声明,就意味着以后可以省前缀 std::,
    直接使用命名空间中的名字,这样代码可以更易读。

    有一种情况下,必须总是使用完全限定的标准库名字:在头文件中。理由是
    头文件的内容会被预处理器复制到程序中。用 #include 包含文件时,相当于头
    文件中的文本将成为我们编写的文件的一部分。如果在头文件中放置 using 声
    明,就相当于在包含该头文件 using 的每个程序中都放置了同一 using,不论
    该程序是否需要 using 声明
    通常,头文件中应该只定义确实必要的东西。请养成这
    个好习惯。

    5. 标准库 string 类型
    string 类型支持长度可变的字符串,C++ 标准库将负责管理与存储字符相
    关的内存,以及提供各种有用的操作。标准库 string 类型的目的就是满足对字
    符串的一般应用。
    与其他的标准库类型一样,用户程序要使用 string 类型对象,必须包含相关头
    文件。如果提供了合适的 using 声明,那么编写出来的程序将会变得简短些:
    #include <string>
    using std::string;

    6: 构造函数

    是一个特殊成员函数,定义如何初始化该类型的对象。表 3.1 列出了几个 string 类型常用
    的构造函数。当没有明确指定对象初始化式时,系统将使用默认构造函数(第
    2.3.4 节)。
    表 3.1. 几种初始化string 对象的方式
    string s1; 默认构造函数 s1 为空串
    string s2(s1); 将 s2 初始化为 s1 的一个副本
    string s3("value"); 将 s3 初始化为一个字符串字面值副本
    string s4(n, 'c'); 将 s4 初始化为字符 'c' 的 n 个副本

    7: 使用getline 读取整行文本

    int main()

    {
    string line;
    // read line at time until end-of-file
    while (getline(cin, line))
    cout << line << endl;
    return 0;
    }

  • 相关阅读:
    FastReport3.18使用心得
    FastReport问题整理
    SQL server 2005基于已存在的表创建分区
    SQL Server 2005对海量数据处理
    SQL SERVER2005加密解密数据
    Linux/Unix环境下的make和makefile详解 
    我想要的书
    全面提升BIND DNS服务器安全华江
    NOR和NAND Flash存储器的区别
    两个应届生找工作的好网站
  • 原文地址:https://www.cnblogs.com/ruzhuan/p/3442134.html
Copyright © 2011-2022 走看看