C++:宏定义#define与常量const | 您所在的位置:网站首页 › 宏定义define pi 31416中定义pi › C++:宏定义#define与常量const |
今天在看C++ Primer Plus时,看到其中说到常量定义时,使用const要优于#define,解释的有些模糊,从网上找到了资料来详细的学习一下。 这位大神总结的很好,一起膜拜学习。http://blog.csdn.net/love_gaohz/article/details/7567856 1. const 用于定义常量数据类型,通过const定义的变量不能被修改。 对于普通数据类型,有两种写法,效果相同: const int A = 1; int const A = 1; 对于指针类型,需要注意,存在三种形式,最后一种效果不同: const int *p = #; //*p不能被修改,p能被修改,即指向的内存空间内容不能被修改,指针的指向可以修改 int const *p = #; //*p不能被修改,p能被修改,同第一种 int *const p = #; //*p能被修改,p不能被修改,即指针的指向不能被修改,指向的内存空间内存可以被修改。 2. #define 宏定义,用于替换表示。 最常见的就是定义常量: #define N 1000 1 和const int N = 1000,效果相同。因此这一点与const存在交集,需要对比的也就是这一点。 还可以定 |
CopyRight 2018-2019 实验室设备网 版权所有 |