0

我想知道是否可以在 Visual Studio 2005 C++ 中创建一个类对象的 ArrayList。

我将有这堂课:

class var
{
   int x;
   int y;
}

在 C# 中是这样的:ArrayList<var> list = new ArrayList<var>();,但在 C++ 中不起作用。

我忘了提到该项目是一个Windows Form Application

4

3 回答 3

3

你试过了吗std::vector<var> myVectorstd::list<var> myList

于 2013-07-23T09:00:09.693 回答
2

那应该做的工作:

#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()等。您应该阅读标准库的文档以了解所有替代方案。

于 2013-07-23T09:04:32.400 回答
1

你可以这样做:

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);

方法太多了,这只是其中的一小部分。

于 2013-07-23T09:02:17.163 回答