假设我有一个名为'MyClass'的课程。我的'main'方法将参数作为文件名列表。每个文件名都是MyClass的配置文件,但程序用户可以根据需要拥有尽可能多的MyClass对象。如果他们输入2个文件名作为我的main方法的参数,我想有2个对象。
如果我知道用户仅限于2个对象,我可以使用:
MyClass myclass1;
MyClass myclass2;
但是,如果用户说输入了3个或4个文件名,则无法使用。任何人都可以帮助我并建议一种方法,我可以根据我的程序给出的参数数量来创建一些类的实例化吗?
由于
答案 0 :(得分:3)
使用std::vector
。实施例
#include <vector>
std::vector<MyClass> vec;
vec.push_back(MyClass());
vec.push_back(MyClass());
vec.push_back(MyClass());
之后,您可以通过[]
和迭代器等访问元素。网上有很好的参考资料。
答案 1 :(得分:2)
您可以使用std::vector
MyClass
个实例 - 然后您可以根据需要制作尽可能多的实例。
例如,看一下this tutorial(网络上的众多网站之一),让您入门。
答案 2 :(得分:2)
为此,您应该使用数组或向量:
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