初级C++:在不知道要创建多少对象的情况下在运行时创建对象

Beginner C++: object creation at runtime without knowing how many objects to create

本文关键字:对象 情况下 多少 运行时 创建对象 创建 C++ 不知道 初级      更新时间:2023-10-16

假设我定义了一个名为"MyClass"的类。我的"main"方法将文件名列表作为参数。每个文件名都是MyClass的配置文件,但程序用户可以拥有任意数量的MyClass对象。如果他们输入两个文件名作为我的主方法的参数,我希望有两个对象。

如果我知道用户被限制为2个对象,我可以使用:

MyClass myclass1;
MyClass myclass2;

然而,如果用户改为输入3或4个文件名,这将不起作用。有人能帮助我并建议一种方法吗?我可以根据程序给出的参数数量来创建一个类的多个实例?

感谢

使用std::vector。示例

#include <vector>
std::vector<MyClass> vec;
vec.push_back(MyClass());
vec.push_back(MyClass());
vec.push_back(MyClass());

之后,您可以通过[]和迭代器等访问元素。网上有很好的参考资料。

您可以使用MyClass实例中的std::vector,然后您可以根据需要创建任意数量的实例。

例如,看看这个教程(网上有很多教程之一(,让你开始学习。

为此,您应该使用数组或向量:

vector<MyClass> myclass;
myclass.push_back( ... );  // Make your objects, push them into the vector.
myclass.push_back( ... );
myclass.push_back( ... );

然后你可以访问它们,比如:

myclass[0];
myclass[1];
...

有关更多信息和示例,请参阅维基百科:

http://en.wikipedia.org/wiki/Vector_%28C%2B%2B%29#Usage_example

相关文章: