如何在c++中定义常量:
不能在类中初始化const数据成员,因为在类没有被初始化的时候,成员是不存在的。const成员只在某个对象的生存周期中存在的,不同的对象中const成员变量的值不一样。
class Const
{
const int SIZE = 100; //不能在类中直接生命const成员
int array[SIZE]; //SIZE的值未知,报错
};
因此const成员变量只能在类中的构造函数的初始化列表中进行。
class UseConst
{
public:
Const(int size):SIZE(size);
private:
const int SIZE;
};
UseConst use(100);
还可以使用enum来达成这种效果,但是enum默认的只能是int类型,并且不能表示浮点数,且表示的数的大小有限制
class UseConst
{
enum{size = 100};
int myArray[size];
};
ps:1: 另外在定义一个常量的时候,const和#define 都可以达到效果,但是一般采用const,因为#define只是简单的符号替代,而const可以进行类型检查。
2: 多个for()循环的时候,一般将循环次数少的放在外面,多的放在内层中,这样可以减少CPU的切换次数
3: 在for()循环中有逻辑判断的时候,一般将判断放在for()循环的外面。