C++Primer 第一章笔记

1. 复合类型:基于其他类型定义的类型。

    a)引用:并非对象,只是为对象起了另一个名字。特点:引用必须被初始化。例:

1.      int ival = 1024  

2.      int &refval = ival  ;

b)指针:是“指向”另外一种类型的复合类型。特点:1指针本身就是对象,允许对指针赋值和拷贝,在生命周期内可以指向不同的对象;2指针无须再定义时赋初值。相关操作符:解引用符(*);取地址符(&)。例:

1.      int *ip1,*ip2; //指向int型对象的指针,对于定义的空指针先给定变量地址再赋值(初始化)。

2.      int ival = 42;  

3.      int *p = &ival;//指向变量ival的指针  

2. 常量:const+数据类型。特点:1对常量的引用要用常量引用(const+数据类型+&引用名);2指向常量的指针不能用于改变其所指对象的值,存放常量对象的地址,只能使用指向常量的指针。

3. auto类型说明符:让编译器分析表达式所属的类型。

4. decltype类型指示符:选择并返回操作数的类型。例:

1.      decltype(f()) sum = x; //sum的类型为函数f的返回类型  

2.      decltype(val1) val2 = val1;//  

5. 头文件:通常包含只能被定义一次的实体,如类,const和constexpr变量等。头文件预处理保护符:#ifdef当且仅当变量已定义时为真;#ifndef当且仅当变量未定义时为真。例:

1.      #ifndef SHOPPING_LIST  

2.      #define SHOPPING_LIST  

3.      struct Shopping_list  

4.      {  

5.          std::string item1;  

6.          unsigned item1_price;  

7.          std::string item2;  

8.          unsigned item2_price;  

9.        

10.   };  

11.   #endif // Shopping_list  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值