C++ primer 中文第三版 阅读笔记 第八章

一、寄存器对象:

函数中频繁被使用的变量可以加上register就可声明为寄存器对象。对于寄存器对象,假如能够放到寄存器中就会放到寄存器中,放不到的话就放到内存中。比如 register int  a,一般用于循环控制变量挺好的。


二、静态变量。

这里容易犯一个错误,记住,静态变量只初始化一次,没有初始化的会自动初始化为0

#include <iostream> 
 
int traceGcd( int v1, int v2 ) 

  static int depth = 1; 
cout << depth++ <<
“,”
  if ( v2 == 0 )
 


    depth = 1; 
  return v1; 
  } 
  return traceGcd( v2, v1%v2 ); 


输出不是

1,1,1,1..... 这是因为初始化语句只在第一次调用时执行。

也不是

2,3,4,5...... 这是因为++后执行

应该是

1,2,3,4,5......


三、new的一种特殊使用

new(q)p,在已分配的内存q上创建新的p,其中p和q是指针。


四、命名空间namespace

定义方式 

namespace 名字

{

}

假如命名空间名字在前面出现过,那么两个就合起来。命名空间可嵌套使用,如

namespace a

{

namespace b

{

int c;

}

}

想访问c的话,要a::b::c


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值