如何在C++中创建一个类的多个实例

Sha*_*dow 4 c++ class object

如何创建多个类实例而不单独输入它们的名称?

int main(){
    myClass myInstance_1;
    myClass myInstance_2;
    myClass myInstance_3;
    ...
    myClass myInstace_10;
}
Run Code Online (Sandbox Code Playgroud)

Jar*_*d42 5

您可以执行以下操作:

int main(){
    std::vector<myClass> myInstances;
    for(int i = 0; i < 10; ++i) {
        myInstances.emplace_back(i);
    }
    myInstances[5].myClassFunction();
}
Run Code Online (Sandbox Code Playgroud)


Gal*_*lik 3

如何创建多个类实例而不单独输入它们的名称?

答案是你创建了一个数组,但不是你尝试的方式。

像这样:

int main()
{
    MyClass myInstance[10];

    for(int i = 0; i < 10; i++)
    {
        myInstance[i].myClassFunction();
    }
}
Run Code Online (Sandbox Code Playgroud)

提示:不要使用数组,使用std::vectorstd::array

(参见@Jarod42 的回答)