我将下面的代码分为头文件和源文件。在函数插入中,它指出AllBridges向量未初始化(它甚至似乎都无法识别吗?),并且nextBridge没有分配值-除非我以为我在构造函数中做了?

#include <vector>

using namespace std;

class Bridge
{
    public:
        Bridge(int);
        void insert(Bridge);

    private:

        int nextBridge;
        vector<Bridge> AllBridges;
};


#include "StdAfx.h"
#include "Bridge.h"

using namespace std;

    Bridge::Bridge(int size){
        AllBridges.reserve(size);
        nextBridge= 0;
    }

    void insert(Bridge AddBridge){
        AllBridges[nextBridge] = AddBridge;
    }

最佳答案

应该

void Bridge::insert(Bridge AddBridge)


代替

void insert(Bridge AddBridge)

关于c++ - 为什么我不能访问我的成员变量?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10770723/

10-11 16:00