首页 > 代码库 > const
const
看着别人的文章,觉得重点或者会忘记的就随手记一下。。。。。
1.常类型的变量或对象的值是不能被更新的。
2.const定义的常量在程序运行过程中只有一份拷贝,而#define定义的常量在内存中有若干个拷贝。
3. 编译器通常不为普通const常量分配存储空间,而是将它们保存在符号表中,这使得它成为一个编译期间的常量,没有了存储与读内存的操作,使得它的效率也很高。
4.C++中:
const对象只能访问const成员函数,而非const对象可以访问任意的成员函数,包括const成员函数;
const对象的成员是不能修改的,而通过指针维护的对象确实可以修改的;
const成员函数不可以修改对象的数据,不管对象是否具有const性质。编译时以是否修改成员数据为依据进行检查
常量对象调用 非 常量函数时将会产生语法错误。
C++也允许在数据成员的定义前面加上mutable,以允许该成员可以在常量函数中被修改
5.const只修饰左边的内容(以后老是记不住,这样好记多了。。。)
6.如果不希望函数的调用者改变参数的值。最可靠的方法应该是使用引用。
7.const与宏常量
const常量有数据类型,而宏常量没有数据类型。编译器可以对前者进行类型安全检查,而对后者只进行字符替换,没有类型安全检查,并且在字符替换时可能会产生意料不到的 错误。
const
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。