我想知道是否可以在 Visual Studio 2005 C++ 中创建一个类对象的 ArrayList。
我将有这堂课:
class var
{
int x;
int y;
}
在 C# 中是这样的:ArrayList<var> list = new ArrayList<var>();
,但在 C++ 中不起作用。
我忘了提到该项目是一个Windows Form Application。
我想知道是否可以在 Visual Studio 2005 C++ 中创建一个类对象的 ArrayList。
我将有这堂课:
class var
{
int x;
int y;
}
在 C# 中是这样的:ArrayList<var> list = new ArrayList<var>();
,但在 C++ 中不起作用。
我忘了提到该项目是一个Windows Form Application。
你试过了吗std::vector<var> myVector
?std::list<var> myList
那应该做的工作:
#include <vector>
using std::vector;
class var
{
int x;
int y;
};
int main(void)
{
vector<var> myVec(10); // creates a vector of 10 elements of var objects
// ... other stuff
return 0;
}
但是还有更多方法可以将对象放入向量中,例如创建一个空向量并使用vector::push_back()
等。您应该阅读标准库的文档以了解所有替代方案。
你可以这样做:
var myArray[50];
堆栈上有 50 个变量。你也可以这样做:
var* myArray = new var[50];
堆上有 50 个变量。或者你可以只使用一个 std::vector:
var myObject;
std::vector <var> myVector;
myVector.push_back(var);
或者,我通常使用的最后一个是:
std::vector <var*> myVector;
var* pVar = new var();
myVector.push_back(pVar);
方法太多了,这只是其中的一小部分。