以下程序使用 gcc 8.2.1 生成:
警告:在转换结果类型 [-Wignored-qualifiers] int * const ptrCast = const_cast(ptr) 上忽略类型限定符;
int main() {
int i = 0;
const int * const ptr = &i;
int * const ptrCast = const_cast<int * const>(ptr);
return *ptrCast;
}
编译为:gcc -Wignored-qualifiers test.cc
根据我对 const_cast 的理解,这不应该发出警告。任何人都可以验证这一点吗?