返回信息流有一未初始化的二维vector变量,其行数和列数均是在程序执行的过程中逐步增加,这种机制是否能实现?如果哪位知道的话请告诉我一下,谢谢!
这是一条镜像帖。来源:北邮人论坛 / cpp / #93264同步于 2016/9/4
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
[问题]C++二维vector的内存空间动态分配机制
zhangzan
2016/9/4镜像同步14 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
是可以的吧
'''
void demoTest()
{
vector<vector<int>> buffer;
vector<int> atomFirst;
buffer.push_back(atomFirst);
buffer.front().push_back(1);
int trans[] = { 0, 1, 2, 3 };
vector<int> atomSecond(trans, trans + sizeof(trans) / sizeof(int));
buffer.insert(buffer.begin(), atomSecond);
}
'''
在vs2013下面正常编译运行
buffer = [0,1,2,3; 1]
至于vector的内存管理机制,建议去找一下相关博客看一下。
如果你是指std::vector<std::vector<T>>的话,vector里面存vector,随便添加元素,每行的元素个数都可以不一样。添加行直接push_back一个vector<T>就行,添加列只能循环每行push_back元素T了。
vector<vector<type>>这样直接push_back就可以了吧
【 在 zhangzan 的大作中提到: 】
: 有一未初始化的二维vector变量,其行数和列数均是在程序执行的过程中逐步增加,这种机制是否能实现?如果哪位知道的话请告诉我一下,谢谢!
:
发自「贵邮」
谢谢暖神!
【 在 nuanyangyang 的大作中提到: 】
: 本质上和java的array-of-arrays是一样的。
: [upload=1][/upload]