16,473
社区成员
发帖
与我相关
我的任务
分享
typedef std::vector<std::vector<int> > Array2d;
Array2d array;
array = {{1,2}, {1,3,4,5}, {7,8,9}}; //这需要c++11支持,不然只能老老实实pushback了~
assert(array[0][1] == 2);
struct Array1d
{
void reserve(size_t size)
{
m_data = new int[size];
}
int& operator [] (int index)
{
return m_data[index];
}
int *m_data;
}
struct Array2d
{
Array2d(size_t raw, size_t col)
{
m_data = new Array1d[col];
for (int i=0; i<col; ++i)
{
m_data[i].reserve(raw);
}
}
Array1d & operator [] (int index)
{
return m_data[index];
}
Array1d *m_data;
}
Array2d data(4,5);
data[1][2] = 3;
随手写的,没编译过,你知道意思就行。