我有一堂课:
someclass 头代码:
class SomeClass{
SomeClass();
vector<int> somePointerVector;
public:
SomeClass(vector<int> &someVector);
};
Run Code Online (Sandbox Code Playgroud)
我对如何在这里使用向量有点困惑。我想设置 somePointerVector = someVector,这样我就可以使用 somePointerVector 操作 someVector 与类的其他部分中的数据,而且我也不想复制所有 someVectors 数据。
使用数组我会这样做:
int* somePointerArray = someArray;
Run Code Online (Sandbox Code Playgroud)
但是我将如何用向量来做到这一点?
做somePointerVector一个参考并将它放在你的类的初始化列表中。(并请给它一个更好的名字。)
class SomeClass
{
vector<int> &somePointerVector;
public:
SomeClass(vector<int> &someVector)
: somePointerVector(someVector)
{}
};
Run Code Online (Sandbox Code Playgroud)