C++ Primer学习 第二章

来源:互联网 发布:新津知美术馆 编辑:程序博客网 时间:2024/05/01 12:24

C++是一门静态类型语言,在编译时会作类型检查。

C++中初始化不是赋值。

声明和定义:

extern关键字可以用来声明变量名而不定义;  extern声明不是定义,也不分配存储空间。

extern int   i;

int i;

extern double pi=3.1416;  只有当extern声明位于函数外部时,才可以有初始化式。

在C++中,变量必须且仅能定义一次,而且在使用变量之前必须定义或者声明变量。

任何在多个文件中使用的变量都需要有与定义分离的声明。在这种情况下,一个文件含有变量的定义,使用该变量的其他文件则包含该变量的声明(而不是定义)


const:

1.const对象:常量在定义后就不能被修改,所以定义时必须初始化。

 const对象默认为文件的局部变量:在全局作用域声明的const变量是定义该对象的文件的局部变量,此变量只存在与那个文件中,不能被其他文件访问; 通过指定const变量为  extern,就可以在整个程序中访问const对象。


引用: 引用只是对象的另一名字.

const引用是指向const对象的引用,  非const引用是指向非const类型的引用。

const int ival=1024;

const int &refVal=ival; (ok)

int &ref2=ival; (error)

非const引用只能绑定到与该引用同类型的对象;const引用则可以绑定到不同但相关的类型的对象或者绑定到右值。

int i=12;

const  int  &r =42;

const int  &r2=r+i;


typedef: 用来定义类型的同义词

typedef  double wages; // wages is a synonym for double


枚举:

枚举成员值可以是不唯一的,不能改变枚举成员的值,枚举成员本身就是一个常量表达式。

枚举类型的对象的初始化或赋值,只能通过其枚举成员或同一枚举类型的其他对象来进行。


使用class关键字来定义类,成员默认访问方式是private    使用struct关键字来定义类,成员默认为public 





原创粉丝点击