C++中的常量定义小结
一般来说,使用C语言编程时我们都习惯在代码当中使用C当中的宏定义来定义一个数值常量:在C++开发项目时,也会经常存在沿袭C当中常量用法情况。之前有所耳闻在C++中应该尽可能少的使用C风格的宏定义,这又是为什么呢?宏在定义常量的时候在预处理过程中执行文本替换,在编译期间不会生成对应的符号,不利于调试。对于在类当中使用const来定义常量时,必须要使用static来修饰该常量,并且需要在类定义外部对该常量做出声明。而对于enum来说大可不必如此,所以Bjane Stroustrup在他维护的FAQ当中建议使用enum这种方式来定义常量。特别是当常量多,头文件被引用多的情况下尤其注意,定义不当会带来不必要的内存浪费。
用户评论