返回const双指针指向const数据

时间:2015-10-17 15:12:30

标签: c++ pointers c++11 casting const

我有一个int** matrix,我想以只读方式返回它。

所以,我会这样做:

int const ** const get_matrix() {
  return (int const ** const)matrix;
}

但现在我试着这样做:

int const ** const get_matrix() {
    return static_cast<int const ** const>(matrix);
}

得到了:

  

从'int **'类型的static_cast中输入'const int ** const'

为什么?

1 个答案:

答案 0 :(得分:3)

试试这个:

int const ** const get_matrix() {
    return const_cast<int const ** const>(matrix);
}

它在工作。