为什么const_cast正在为一个变量创建两个值

时间:2017-01-23 07:27:35

标签: c++ const-cast

我正在阅读const_cast,因为它应该删除变量的常量,

const int c1 = 100;
int *c2 = const_cast <int *>(&c1); // removing the constantness
*c2 = 200; // hence now i can edit it
cout << *c2 << endl; // reflect the changed value = 200
cout << c1 << endl; // still old value = 100

常量被删除,变量我可以编辑,就像将它传递给某个函数一样,它接收&#34; int *&#34;数据类型,

但为什么相同的尖头空间显示两个值?

const_cast是否正在创建其他临时空间?

0 个答案:

没有答案