写入提供的矢量

时间:2016-06-01 09:26:10

标签: c++ c++11

我想编写一个类,我可以从外部提供向量,然后该类中的成员函数可以写入提供的向量。如果有可能,我无法想到如何做到这一点。

我已经能够在构造函数中提供向量并向其写入,但我需要能够从其他一些成员函数中执行此操作。

感谢任何帮助。

1 个答案:

答案 0 :(得分:3)

这看起来如下:

class Foo {
   std::vector<int>* pvec;
public:
    Foo() : pvec(nullptr) {}
    void suppyVec(std::vector<int>& v) {
       pvec = &v;
    }
    void doSomething() {
       // process pvec
       assert(pvec != nullptr);
       std::vector<int>& vec = *pvec;
    }
};

或参考,但你必须使用构造函数:

class Foo {
   std::vector<int>& vec;
public:
    Foo(std::vector<int>& v) : vec(v) { }
    void doSomething() {
       // process vec
    }
};