【发布时间】:2017-05-24 01:50:32
【问题描述】:
这两个代码有什么区别?
1.
const int ic = 2;
const int* const p3;
p3 = ⁣
2.
const int ic = 2;
const int* const p3 = ⁣
1 无法编译。 2 编译。对我来说,它看起来就像我们只是将常量整数的内存地址分配给指向常量整数的常量指针一样。我猜这与 C++ 中的初始化或约定有关。
编辑:error: assignment of read-only variable 'p3' 在第一个。我不明白为什么它甚至没有初始化时是只读的。根据 const 规则,值一旦初始化就不能更改,但这个甚至没有初始化。
【问题讨论】:
标签: c++ initialization constants