【发布时间】:2012-03-14 17:50:32
【问题描述】:
以下代码无法编译
void aaa(const int **a) {
}
int *a[] = {new int[2]};
aaa(a);
在 VS2010 中出现“无法将参数 1 从 'int [1]' 转换为 'const int *”,在 gcc 中出现类似错误
当我将声明更改为:
int const *a[] = {new int[2]};
或
const int *a[] = {new int[2]};
它可以编译,但我不明白为什么它不接受非 const 变量声明
【问题讨论】:
标签: c++ casting const-cast