首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

C++头文件中恒量和静态常量有什么区别

2013-12-05 
C++头文件中常量和静态常量有什么区别?在头文件里----------------const int AAA 1----------------sta

C++头文件中常量和静态常量有什么区别?
在头文件里
----------------
const int AAA = 1;
----------------
static const int AAA = 1;
----------------
#ifndef M_AAA
const int AAA = 1;
#endif
----------------
这三个有什么区别?
[解决办法]
1. const int AAA = 1; 说明是常量,外部文件可以extern访问
2.static const int AAA = 1; 仅本文件内部可以访问
3.
#ifndef M_AAA
const int AAA = 1;
#endif
根据宏的定义与否,与1的情况完全一样。
[解决办法]

引用:
1. const int AAA = 1; 说明是常量,外部文件可以extern访问
2.static const int AAA = 1; 仅本文件内部可以访问
3.
#ifndef M_AAA
const int AAA = 1;
#endif
根据宏的定义与否,与1的情况完全一样。

+1
[解决办法]
静态变量 这种方式定义的变量能被本文件内的任何函数使用。其他文件中的函数不可使用。

常量是定以后,在程序运行中不能被改变

#ifndef M_AAA
const int AAA = 1;
#endif
#ifndef M_AAA 用来测试M_AAA有没有被宏定义过,如果没有则对#ifndef和#endif之间的代码进行编译
[解决办法]
#ifndef M_AAA
const int AAA = 1;
#endif
这样做可防止头文件重复引用问题

热点排行