Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/145.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在循环中为C+创建对象+;_C++_Loops_Class_For Loop_Instance - Fatal编程技术网

C++ 在循环中为C+创建对象+;

C++ 在循环中为C+创建对象+;,c++,loops,class,for-loop,instance,C++,Loops,Class,For Loop,Instance,我需要创建一个对象。正常创建如下面的代码所示;有没有更容易创建它们的方法?也许是一个循环 const int ID_box1 = 1; box1 = new Boxes(ID_box1, position(10,10); box1->Append("option 1"); box1->Append("option 2"); etc.. //每个框有80个选项:如果您确定要创建的对象数量,则可以按如下方式使用数组: #include <array> std::a

我需要创建一个对象。正常创建如下面的代码所示;有没有更容易创建它们的方法?也许是一个循环

const int ID_box1 = 1; 

box1 = new Boxes(ID_box1, position(10,10); 

box1->Append("option 1");
box1->Append("option 2"); etc..

//每个框有80个选项:

如果您确定要创建的对象数量,则可以按如下方式使用数组:

#include <array>

std::array<Box, 220> boxes; // assumes default constructor is available for Box class. 
#包括
std::数组框;//假定默认构造函数可用于Box类。
数组提供了性能优势,它的用法类似于普通的对象数组,加上它充当容器,因此如果需要,可以使用适用的标准库算法函数


如果需要更大的灵活性和功能性,那么std::vector是一个不错的选择

是的,循环听起来不错。坦白地说,std::vector听起来更好。试试看。(如果没有其他问题,它可能会解决您发布的代码中缺少的
,因为您不再需要这样做了)。要存储对象,请使用数组或
std::vector
。要添加选项,您可能需要使用
std::To_string
构造选项的名称。有很多资源可以教你如何使用数组和循环。我们不会从零开始教人们这些基本的东西。