所以我有一个“办公室”课程,我正在编写一个程序,每个“办公室”都有一定数量的柜员忙或闲。我想将这些计数器表示为Office类的私有int数组。 我遇到的问题是,出纳员的数量是办公室类的声明参数,所以我不能去
private:
int tellers[num_tellers];
我已经尝试过与构造函数不同的东西,但似乎没有任何工作。我该怎么做呢?我在网上看到的一切都是使用new运算符,但我没有兴趣使用指针。
提前致谢
答案 0 :(得分:5)
您有两种选择:
是第一个也是不安全的选择private:
int* tellers;
并在你的构造函数中:
tellers = new int[yourParamGoesHere];
第二个更安全的选择是使用矢量,然后你会有
private:
std::vector<int> tellers;
在你的构造函数中你会这样做:
Office(int numberOfTellers):
tellers(std::vector<int>(numberOfTellers))
然后,无论何时你想要读取或写入任何整数,你都可以像对待数组一样索引向量:
tellers[0] = 42;