您的位置:首页 > 编程语言 > C语言/C++

【C++学习点滴】4月汇总:volatile,数组维度,const修饰符

2011-05-08 15:47 344 查看

volatile关键字

  volatile关键字是一种类型修饰符,用它声明的类型变量表示可以被某些编译器未知的因素更改,比如:操作系统、硬件或者其它线程等。遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问。

使用该关键字的例子如下:

int volatile nVint;

 当要求使用volatile 声明的变量的值的时候,系统总是重新从它所在的内存读取数据,即使它前面的指令刚刚从该处读取过数据。而且读取的数据立刻被保存。
数组维度:

数组的维数值必须是常量表达式—— 即 必须能在编译时刻计算出它的值 这意味着非const 的变量不能被用来指定数组的维数

与内置数组不同 vector 可以被另一个vector 初始化 或被赋给另一个vector
Const修饰符:

const 对象的地址只能赋值给指向const 对象的指针

const int test = 0;
const int *ptr = &test; //ptr 指向的对象是无法改变的,但是ptr可以指向其他的对象
int test1 = 0;
int *const ptr = &test1; //ptr 指向的地址是无法改变的,但是指向的对象可以改变,意思是这种指针只能指向一个固定的对象。但是这个对象的值可变。

Break语句:
break 语句终止最近的while do while for 或switch 语句 程序的执行权被传递给紧接着被终止语句之后的语句<注意不包含if语句>
continue 语句只有出现在循环语句中才是合法的

和JAVA语言不一样的初始化定义方法

ilist() : _at_front( 0 ), _at_end( 0 ) ,_size( 0 )
{
}
这样看就比较好理解了。

冒号后面的表示将括号里的值赋给成员变量,而函数体里面什么都没有做。

相当于如下代码
ilist()
{
_at_front=0;
_at_end=0;
_size=0;
}


这是构造函数的一个特殊的实现方法,其他的函数不能这么用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: