首页 > 代码库 > const的一些记录.
const的一些记录.
const 与地址分配问题:
<c++编程思想> 在c++中 一个const不必创建内存空间,而在c中,一个const总是需要创建一块内存空间。
在c++中, 是否为const常量创建内存空间依赖于对它如何使用。一般说来,如果一个const仅仅用来把
一个名字用一个值替代,那么该储存空间就不必要创建。如果取一个const的地址或者把它定义成extern,
则会为该const创建内存空间。
临时变量类型为const:
1 class X {}; 2 3 void foo1(X& x) { 4 } 5 6 void foo2(const X& x) { 7 } 8 9 X f() {10 return X();11 }12 13 foo1(f()); // wrong14 foo2(f()); // right
在const对象中改变成员:
1. 转换为非const this指针进行访问 (const_cast<Y*>(this))->i++;
2. 使用mutable关键字声明成员 mutable int i;
const的一些记录.
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。