首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >正在将私有成员数组w/ size初始化为类初始化参数

正在将私有成员数组w/ size初始化为类初始化参数
EN

Stack Overflow用户
提问于 2012-09-06 09:15:43
回答 1查看 14.9K关注 0票数 2

因此,我为当前正在编写的程序创建了一个"Office“类,每个"Office”类都有一定数量的出纳员,他们要么忙着,要么闲着。我希望将这些出纳员表示为Office类的私有int数组。我遇到的问题是出纳员的数量是office类的声明参数,所以我不能直接去

代码语言:javascript
复制
private: 
    int tellers[num_tellers];

我用构造器尝试了不同的方法,但似乎都不起作用。我该如何正确地做到这一点?我在网上看到的所有东西都在使用new运算符,但我对此没有兴趣使用指针。

提前感谢

EN

回答 1

Stack Overflow用户

发布于 2012-09-06 09:38:37

您有两个选项:第一个也是不安全的选项是

代码语言:javascript
复制
private:     
    int* tellers;

在你的构造函数中:

代码语言:javascript
复制
tellers = new int[yourParamGoesHere];

第二个也是更安全的选择是使用向量,这样您就可以拥有

代码语言:javascript
复制
private:
    std::vector<int> tellers;

在你的建筑中,你会这样做:

代码语言:javascript
复制
Office(int numberOfTellers):
    tellers(std::vector<int>(numberOfTellers))

然后,当你想读或写任何整数时,你可以像数组一样索引向量,如下所示:

代码语言:javascript
复制
tellers[0] = 42;
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12291742

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档