C++中定义二维vector有多种方法:1. 定义空的二维vector可后续添加行;2. 指定m行n列并初始化为某值,如vector(3, vector(4, 0))创建3×4矩阵;3. 可设不同默认值如1.5;4. 动态用push_back添加行;5. C++11可用列表初始化{{1,2,3},{4,5,6}}。

在C++中,定义和初始化一个二维 vector(即 vector 的 vector)非常常见,尤其用于处理矩阵、表格或动态二维数组。下面介绍几种常用的方法。
1. 基本定义:空的二维 vector
如果你只需要定义一个空的二维 vector,可以这样写:
std::vector> matrix;
此时 matrix 是一个空的二维 vector,你可以后续用 push_back 添加行。
2. 指定行数和列数进行初始化
如果想创建一个 m 行 n 列 的二维 vector,并初始化为某个值(如 0),可以这样做:
std::vector> matrix(m, std::vector(n, 0));
例如,创建一个 3×4 的整型矩阵,所有元素初始化为 0:
std::vector> matrix(3, std::vector(4, 0));
立即学习“C++免费学习笔记(深入)”;
说明:3 表示有 3 行 std::vector(4, 0) 表示每一行是一个包含 4 个元素、初始值为 0 的 vector
3. 创建并初始化为不同默认值
你可以将初始值设为其他数字,比如 -1 或 1:
std::vector> grid(5, std::vector(10, 1.5));
这会创建一个 5×10 的 double 类型二维 vector,每个元素为 1.5。
4. 动态添加行和列
你也可以先定义空 vector,然后逐行添加:
std::vector> matrix;std::vector row = {1, 2, 3};matrix.push_back(row);matrix.push_back({4, 5, 6});
这样就构建了一个 2×3 的矩阵。
5. 使用列表初始化(C++11 及以上)
可以直接用初始化列表赋值:
std::vector> matrix = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
这会创建一个 3×3 的矩阵,结构清晰,适合已知数据的情况。
基本上就这些。根据使用场景选择合适的定义方式即可。常见于算法题、图像处理、动态规划等需要二维结构的场合。
以上就是c++++中怎么定义一个二维vector_c++二维vector定义与初始化的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1479283.html
微信扫一扫
支付宝扫一扫