繁体   English   中英

C ++中的二维向量

[英]Two Dimensional Vectors in C++

嘿,我很好奇要创建一个二维chars向量,所以我知道它是向量中的向量,我想将所有值初始化为','。

所以我很了解

vector<vector<char>> spaceStation();

我猜列和行放在括号中,但我不确定。

谢谢!

如果要查找的是nxn或nxm 2D矩阵,则可以在创建矩阵之前确定n和m(即使在运行时也可以确定),那么向量vector可能不是最有效的方法去做。 在内部,向量的增长方式是:如果当前分配的空间已满,则分配更大的内存,然后将所有现有数据移动到新位置。 类似地,插入新的第一行将要求所有向量向下移动,这又将导致所有其他向量及其元素向下复制。

如果您知道n,m,即使它在运行时,您也可以使用单个向量(大小为n ^ 2或nxm)分配一个大的内存块,并在逻辑上作为向量访问元素(a [i] [j]可以是vector [i * n + j]),从而有效地管理单个存储块。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM