c++ - for循环中的构造函数

标签 c++ oop constructor

我刚开始接触 OO,我有一个关于构造函数的问题。这只会用不同的参数 i 一遍又一遍地创建相同的对象“Team a”,对吗?

for (int i = 1; i < n+1; i++) Team a (i); // construct teams

如果我知道必须有多少个团队,我该如何创建不同的“团队”,即团队 a、团队 b ... 团队 h?参数 i 不能同时是属性和名称吗(Team 1,Team 2..)?

非常感谢您提供任何提示或帮助!

Pd:这是我正在使用的构造函数(如果您需要更多代码,请在评论中写下):

public:
//constructors
Team(int n); // (this will set number to n and points, goals_scored, goals_lost to 0)

最佳答案

您可以使用 std::vector :

std::vector<Team> teams;

for(int i = 0; i < n; ++i)
    teams.emplace_back(i + 1); // makes Team(i + 1) in vector

注意:std::vector 使用基于零的索引,因此您的团队 #1 是索引 0:

teams[0]; // team #1
teams[1]; // team #2
teams[n]; // team #n + 1

关于c++ - for循环中的构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35888643/

相关文章:

java - 处理 Java 环境中的构造函数出现问题

c++ - 如何在 Windows 上为 C/C++ 中的文件预先分配空间?

c++ - 如何从另一个窗口/程序发送/接收消息?

c++ - 自动使用派生类

c++ - 为什么打印16而不是17并且变量不增加?

作为类成员的 C++ 对象实例

java - 我想以列或列表的形式打印枚举器数据

c++ - 基本访问中的工厂方法在派生中 protected 构造函数

java - 即使对象属于子类,也会调用父类(super class)方法

c# - 在 C# 中从具有依赖接口(interface)的抽象类继承的正确方法