我有以下代码:
int n =3;
int A[n] = {3,2,1}, B[n], C[n];
han(n, A, B, C);
//--------------
void han(int disk, int source[], int target[], int spare[])
{
...
target[target -> end()] = source -> back();
source -> back() = 0;
// error : request for member 'end' in '* target', which is of non-class type 'int'
...
}
我知道han
int target[]
内部是一个指针。
有没有办法在target.end()
内使用source.back()
和han
?
答案 0 :(得分:1)
直接回答否。最好在这种情况下使用矢量。
答案 1 :(得分:0)
我知道
han
int target[]
内部是一个指针。有没有办法在target.end()
内使用source.back()
和han
?
没有。指针没有成员函数,所以你不能做这样的事情。指针包含内存中对象的地址。没有更多,没有更少。只使用指向数组元素的指针,就不可能找到整数数组的结尾。你需要知道大小。