c++ primer 第二章

1:基本内置类型


算数类型:整数,浮点数,单个字符,布尔类型

void 类型

只有内置类型 才有 字面值

左值可以出现在赋值语句的左边和右边,变量是左值。

2:初始化,初始化 不是赋值

定义时指定了初始值的对象被称为已经初始化了。两种初始化形式,复制初始化(=),直接初始化。

int ival(1024)   //直接初始化,更加灵活,效率更高

int ival = 1024 //复制初始化

对于内置类型,复制初始化和直接初始化几乎没有区别,类的构造函数是用来初始化的。

内置类型变量的初始化:函数体外定义的变量都初始化为0,函数体内定义的内置类型不进行自动初始化

类类型的初始化:通过定义一个或者多个构造函数来控制初始化,如果没有定义构造函数,则调用默认构造函数进行初始化

3:声明和定义

定义:用于为变量分配存储空间,还可以为变量指定初始值,在一个程序中,变量有且只有一个定义。

声明:定义也是声明,向程序表明变量的类型和名字。可以用extern声明而不定义变量。

如果声明有初始化式,那么它可被当成定义,只有当extern 声明位于函数外部时才能有表达式。

extern double pi = 3.14;

4:const限定符,定义常量

const 对象默认为文件的局部变量,不能被其他文件访问,通过指定const 对象为extern就可以在其他文件中访问了。

c文件中,extern const int i = 50;.h 文件中,extern const int i;

当const 变量用常量初始化,将其定义在头文件中,如果不是常量初始化,那么就在源文件中定义并初始化extern,在头文件中声明(extern)

非const 引用只能绑定到与该引用同类型的对象上。

const 引用可以绑定到不同但相关的对象上或绑定到右值。

double pi = 3.14;int &rpi = pi; X

douple pi = 3.14;const int &rpi = pr;正确。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容