2. 变量和基本类型

来源:互联网 发布:云上贵州大数据的意义 编辑:程序博客网 时间:2024/06/05 06:30
  1. C++基本类型

    • bool, char, wchar_t(扩展字符集,如汉字和日语), short, int, long, float, double, long double.
    • 使用double类型不会出错,且其计算代价想杜宇float是可忽略的;而float中隐式精度损失是不能忽视的。
    • 代码不要出现机器相关的行为。如int的位数在程序中是个固定且已知的值,那样程序是不可移植的。
  2. 变量初始化

    • 初始化不等价于赋值。因为赋值是擦除对象当前值并用新值代替。
    • 内置类型,如果在函数体外定义,则初始化为0,函数体内则不初始化
    • 定义和声明,定义指为变量分配存储空间,还可以指定初始化值,so一个程序中定义有且只有一次;声明指向程序表明变量的类型和名字(用extern表明此变量在其他位置已经定义),不需要分配空间,所以声明可以有多次。so定义也可以认为是声明。
    • 头文件用于声明而不是用于定义。因为头文件包含于多个源文件中(这样如果头文件中包含定义,则在源文件中非常可能命名同名变量出现错误),所以不应该包含变量或者函数的定义。除了,头文件中可以定义类、const对象和inline函数。
  3. struct 和 class用来定义类的区别在于默认访问基本,struct–public,class– private。
    枚举中,枚举成员的值可以是不唯一的。

    enum Points(point2d = 2, point2w, point3d = 3, point3w); // 合理
    point2w默认初始化为3,与point3d相同

  4. 引用

    • 引用是别名,必须用于该引用同类型的对象初始化;
    • const引用是指向const对象的引用,因为它仅仅是别名,所以值和地址都不可以改变。
    • const引用可以绑定到不同但相关的类型的对象;而非const引用只能绑定到与该引用同类型的对象。
  5. typedef名字

    常被同于三种目的:

    • 为了隐藏特定类型的实现,强调使用类型的目的;
    • 允许一种类型用于多个目的,同样使得每次使用该类型的目的明确;
    • 简化复杂的类型定义,使其更易理解。
0 0