我有下面的代码拆分头和源文件。在函数插入它的状态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;
}
您应该使用成员初始值设定项语法来初始化构造函数中的变量,而不是显式赋值语句。 – chris