当前位置: 首页 > news >正文

e2ee网站开发框架2.23先行版资讯平台网站模板

e2ee网站开发框架2.23先行版,资讯平台网站模板,广发证券 网站谁做的,想学做网站seo 在哪学 电话多少C笔记之初始化二维矩阵的方法 —— 2023年5月20日 上海 code review! 文章目录 C笔记之初始化二维矩阵的方法一.常见方法1. 使用数组2. 使用向量3. 使用数组的动态分配4. 使用嵌套的 std::vector 并使用resize方法5. 初始化固定大小的 std::array 二.C中使用vector初始化二维矩…C笔记之初始化二维矩阵的方法 —— 2023年5月20日 上海 code review! 文章目录 C笔记之初始化二维矩阵的方法一.常见方法1. 使用数组2. 使用向量3. 使用数组的动态分配4. 使用嵌套的 std::vector 并使用resize方法5. 初始化固定大小的 std::array 二.C中使用vector初始化二维矩阵的所有方法1. 列表初始化2. 使用 resize 方法——重要3. 使用 push_back 方法4. 使用 emplace_back 方法5. 使用 assign 方法——重要6. 使用 insert 方法 三.根据一个已有的二维矩阵使用std::vector来初始化一个新的二维矩阵1. 使用拷贝构造函数——重要2. 使用赋值运算符——重要3. 使用 assign 方法4. 使用 std::copy 函数5. 使用 std::copy_n 函数6. 使用范围基础的 for 循环和 push_back 方法 三.根据一个已有的二维矩阵使用std::vector来初始化一个新的同维度的所有元素都为0的二维矩阵1. 使用 resize 方法和循环——重要2. 使用 resize 方法和 std::transform 函数3. 使用嵌套的 resize 方法 一.常见方法 1. 使用数组 你可以使用二维数组来初始化一个矩阵 int matrix[3][3] { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} };2. 使用向量 你也可以使用std::vector来创建和初始化二维矩阵 std::vectorstd::vectorint matrix { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} };3. 使用数组的动态分配 如果你需要动态地创建矩阵例如其尺寸在运行时确定可以使用new操作符 int rows 3; int cols 3; int** matrix new int*[rows]; for(int i 0; i rows; i)matrix[i] new int[cols];然后你可以使用循环来初始化这个矩阵。 4. 使用嵌套的 std::vector 并使用resize方法 如果你需要动态地创建和初始化矩阵但你更喜欢使用std::vector你可以这样做 int rows 3; int cols 3; std::vectorstd::vectorint matrix; matrix.resize(rows, std::vectorint(cols, 0)); // 这将创建一个3x3的矩阵并用0填充5. 初始化固定大小的 std::array 对于固定大小的二维矩阵可以使用std::array std::arraystd::arrayint, 3, 3 matrix { { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} } };二.C中使用vector初始化二维矩阵的所有方法 在 C 中使用 std::vector 来初始化二维矩阵是常见的做法因为它提供了灵活的大小和方便的内存管理。以下是一些方法 1. 列表初始化 你可以在声明时就初始化 std::vector std::vectorstd::vectorint matrix { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} };2. 使用 resize 方法——重要 如果你已经知道矩阵的大小但要稍后填充值可以使用 resize 方法 std::vectorstd::vectorint matrix; matrix.resize(rows, std::vectorint(cols));3. 使用 push_back 方法 你也可以创建一个空的 std::vector然后使用 push_back 方法来添加行 std::vectorstd::vectorint matrix; for(int i 0; i rows; i) {std::vectorint row;for(int j 0; j cols; j) {row.push_back(value);}matrix.push_back(row); }4. 使用 emplace_back 方法 类似于 push_back但 emplace_back 直接在原地构造新元素通常效率更高 std::vectorstd::vectorint matrix; for(int i 0; i rows; i) {matrix.emplace_back(std::vectorint(cols, value)); }5. 使用 assign 方法——重要 assign 方法可以用来替换 std::vector 中的所有元素 std::vectorstd::vectorint matrix; matrix.assign(rows, std::vectorint(cols, value));6. 使用 insert 方法 insert 方法可以在 std::vector 的任何位置插入新元素 std::vectorstd::vectorint matrix; for(int i 0; i rows; i) {matrix.insert(matrix.end(), std::vectorint(cols, value)); }注意在这些例子中rows、cols 和 value 都是整数变量分别表示矩阵的行数、列数和初始值。 三.根据一个已有的二维矩阵使用std::vector来初始化一个新的二维矩阵 在C中如果你已经有一个二维矩阵你可以通过多种方式使用std::vector来初始化一个新的二维矩阵 1. 使用拷贝构造函数——重要 std::vectorstd::vectorint old_matrix { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; std::vectorstd::vectorint new_matrix(old_matrix);2. 使用赋值运算符——重要 std::vectorstd::vectorint old_matrix { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; std::vectorstd::vectorint new_matrix old_matrix;3. 使用 assign 方法 std::vectorstd::vectorint old_matrix { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; std::vectorstd::vectorint new_matrix; new_matrix.assign(old_matrix.begin(), old_matrix.end());4. 使用 std::copy 函数 std::vectorstd::vectorint old_matrix { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; std::vectorstd::vectorint new_matrix(old_matrix.size()); std::copy(old_matrix.begin(), old_matrix.end(), new_matrix.begin());5. 使用 std::copy_n 函数 std::vectorstd::vectorint old_matrix { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; std::vectorstd::vectorint new_matrix(old_matrix.size()); std::copy_n(old_matrix.begin(), old_matrix.size(), new_matrix.begin());6. 使用范围基础的 for 循环和 push_back 方法 std::vectorstd::vectorint old_matrix { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; std::vectorstd::vectorint new_matrix; for (const auto row : old_matrix) {new_matrix.push_back(row); }以上就是使用 std::vector 根据已有的二维矩阵初始化新的二维矩阵的一些方法。根据你的具体需求和优化考虑你可能需要选择不同的方法。 三.根据一个已有的二维矩阵使用std::vector来初始化一个新的同维度的所有元素都为0的二维矩阵 在C中如果你已经有一个二维矩阵并希望创建一个新的、同维度的、所有元素都为0的二维矩阵以下是一些方法 1. 使用 resize 方法和循环——重要 std::vectorstd::vectorint old_matrix { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; std::vectorstd::vectorint new_matrix; for(const auto row : old_matrix) {new_matrix.push_back(std::vectorint(row.size(), 0)); }2. 使用 resize 方法和 std::transform 函数 std::vectorstd::vectorint old_matrix { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; std::vectorstd::vectorint new_matrix(old_matrix.size()); std::transform(old_matrix.begin(), old_matrix.end(), new_matrix.begin(), [](const std::vectorint row) {return std::vectorint(row.size(), 0); });3. 使用嵌套的 resize 方法 std::vectorstd::vectorint old_matrix { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; std::vectorstd::vectorint new_matrix; new_matrix.resize(old_matrix.size()); for(size_t i 0; i old_matrix.size(); i) {new_matrix[i].resize(old_matrix[i].size(), 0); }在以上的所有例子中old_matrix 是你已有的二维矩阵new_matrix 是新创建的二维矩阵。所有的新矩阵元素都被初始化为0并且新矩阵的尺寸与原矩阵相同。
http://www.dnsts.com.cn/news/272989.html

相关文章:

  • 六安网站制作人才招聘焦作网站开发公司电话
  • 威海网站建设公司wordpress网站很慢
  • 江苏个人网站备案要求三合一网站怎么做
  • 云南网站建设选天软怎么在百度上打广告
  • 怎么学做网站跟聊天软件网站需要审核吗
  • 郑州建设企业网站找哪个公司wordpress网站流量统计
  • 湖南设计网站机构网站开发人员是干什么的
  • 有什么那个网站网店装修图片
  • 银行门户网站系统建设方案建设银行如何招聘网站
  • 个人网站的重要性秦皇岛企业建设网站
  • 深圳网站制作哪里济南兴田德润简介资源下载站wordpress主题
  • 专业长春网站建设工作室东莞市官网网站建设品牌
  • 萝岗网站建设优化马云做网站最早
  • 深圳企业企业网站建设抖音搜索引擎优化
  • 网站推广有哪些手段郑州设计院排名
  • 深圳市网站建设外包公司论坛型网站怎么做
  • 做网站代理怎么赚钱好搜seo软件
  • 烟台的网站建设企业信息公示网站
  • 建设企业网站找谁做京挑客的网站有哪些
  • 专业北京网站建设公司排名中山哪里有做微网站的
  • 泰州建站免费模板威海网页设计制作公司
  • 电子商务网站建设课后习题wordpress 主题免费
  • 网站开发著作权wordpress带支付主题
  • 哪些网站是可以做网络推广的做网站的销售怎么样
  • 好的网站具备什么条件中国建筑查询平台
  • 专业网站建设需要多少钱wordpress侧边栏显示单个分类列表
  • 望京做网站的公司现在有哪家建筑公司招人
  • 商城网站案例十大网页制作工具
  • 湛江网站建设与网页西安是哪个省
  • c++怎么做网站域名主机网站导航