我曾经用C#或Java进行编程,所以在C++中确实表现不佳。我相信这很容易,但我做不到。请帮我。
我有这个:void swap(vector * vet, int i, int j){ int temp = vet[i]; vet[i] = vet[j]; vet[j] = temp;}
我这样调用该方法:swap(&vet, j, j - 1);
我想要的是使用指针而不是使用值传递 vector 。
Obs:在没有“*”和“&”的情况下,代码可以很好地编译。
请不要说我至少必须尝试学习指针,因为我这样做了。我只是无法使这该死的东西起作用!
最佳答案
您可以尝试类似...。
void swap(vector<int> &vet, int i, int j)
{
int temp = vet[i];
vet[i] = vet[j];
vet[j] = temp;
}
然后调用您的交换函数为
swap(vet,i,j);
底线:使用引用变量。它们更像Java中的引用。