Gra*_*ner -2 c++ pointers const
看看这个程序:
int main(){
const int a_const=10;
int * const a=const_cast<int * const>(&a_const);
*a=5;
}
Run Code Online (Sandbox Code Playgroud)
因此,地址a_const和指针 a具有相同的值.但改变a指向的价值,却没有a_const.
程序的行为未定义.它出现的是可能是不确定的行为的一种表现.
const通过使用const由于a而获得的非指针(或引用),不允许您尝试更改声明为的变量的值const_cast.
(如果在这种情况下似乎有效,请尝试使用只读字符串文字的等效文件 - 这会导致很多平台崩溃.)
| 归档时间: |
|
| 查看次数: |
66 次 |
| 最近记录: |