C++ Primer学习笔记

Chapter1 Base-Knowledge

1.main函数必须有返回值,而且一般是int类型的返回值,reture 0 表示执行成功

void  main() // error: must return any value

 2.fflish(stdin)清空患冲区是一种不良风格

3.cin/cout重定向输入/输出流

4.unsigned int简写为 unsigned

5.代码换行:以一个反斜线符号结尾,后面不允许加注释或空格

cou/                  
t
<< " Hi " << endl;                 
      //等价于
cout<<"Hi"<<endl;

6.引用类型的对象必须在定义是初始化,即绑定到另一个对象

7. const

  • const定义的全局变量是定义该对象的文件的局部变量,不能被其他文件访问。除非加“extern”修饰
  • 非const引用不能绑定一个const对象
  • const引用可以直接用常量初始化或绑定到不同类型的对象,但是非const引用只能绑定同类型对象,不能常量赋值

8.访问标号(public / private / protect)

用Class定义的类,在定义第一个访问标号之前的任何成员都默认为private,而用struct定义的类,则默认为public

9. 命名空间using的声明一般不要放在头文件中

10. string::size 的返回值为string::size_type类型

尽量不要用int/unsigned来表示,因为 不要machine上的int型变量表示范围不同,如果太小的话会溢出

for ( string ::size_type i  =   0 ; i  <   =  str.size(); i ++ )

 

11. vector作for循环遍历的时候不要依赖size的副本遍历,因为在遍历过程中vector有可能添加了元素,size改变

// OK
for (vector < int > ::size_type it  =   0 ; it !   =  vec.size(); it ++ )
// Error
vector < int > ::size_type iSize  =  vec.size();
for (vector < int > ::size_type it  =   0 ; it !   =  iSize; it ++ )

 

12. vec[i] 下标表示法只能用于读取,赋值用push_back.

Chapter2 Array and Pointer

1. 在用下标访问元素的时候,Array使用size_t作为下标的类型

2. 不允许Array直接赋值和copy。可以for循环逐一copy每个元素

3. Avoid using the pointer which has not been inited

4. you can Assign 0 or const varible with 0 value  to a pointer directly

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值