在C++中定义常量

来源:互联网 发布:网络软文发稿 编辑:程序博客网 时间:2024/04/29 11:03

如何在c++中定义常量:

     不能在类中初始化const数据成员,因为在类没有被初始化的时候,成员是不存在的。const成员只在某个对象的生存周期中存在的,不同的对象中const成员变量的值不一样。

[cpp] view plaincopy
  1. class Const  
  2. {  
  3.     const int SIZE = 100;   //不能在类中直接生命const成员  
  4.     int array[SIZE];        //SIZE的值未知,报错  
  5. };  
因此const成员变量只能在类中的构造函数的初始化列表中进行。

[cpp] view plaincopy
  1. class UseConst  
  2. {  
  3. public:  
  4.     Const(int size):SIZE(size);  
  5. private:  
  6.     const int SIZE;  
  7. };  
  8. UseConst use(100);  

还可以使用enum来达成这种效果,但是enum默认的只能是int类型,并且不能表示浮点数,且表示的数的大小有限制

[java] view plaincopy
  1. class UseConst  
  2. {  
  3.     enum{size = 100};//也可以使用static const int size=100;  
  4.     int myArray[size];  
  5. };  
ps:
1:   另外在定义一个常量的时候,const和#define 都可以达到效果,但是一般采用const,因为#define只是简单的符号替代,而const可以进行类型检查。

2:    多个for()循环的时候,一般将循环次数少的放在外面,多的放在内层中,这样可以减少CPU的切换次数

3: 在for()循环中有逻辑判断的时候,一般将判断放在for()循环的外面。

0 0
原创粉丝点击