可以在C ++中以两种方式编写双指针吗?

时间:2019-04-22 01:00:24

标签: c++ pointers dynamic-arrays double-pointer

以下代码段是否完全相同?

*(*(array+ x) + y) = 1;array[x][y] = 1;相同

1 个答案:

答案 0 :(得分:3)

如果array是双指针,指针数组或二维数组类型,则是。

如果是用户定义的类型,则operator[]operator+可能会以不一致的方式被覆盖。例如,如果arraystd::vector,则array[x]将起作用而*(array + x)将不起作用。