热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

向量是否存在行主要形式?

如何解决《向量是否存在行主要形式?》经验,为你挑选了1个好方法。

很明显,2D阵列的行主要形式是存储的单个阵列,使得不同的行按顺序排列.

要遍历2d数组的任何元素,我总是可以这样做:

int a[3][3]={{1,2,3},{4,5,6},{7,8,9}};

for(int i=0;i<3*3;i++){

cout<<*(*a+i)<<" "; //row major form concept where i

得到:

1 2 3 4 5 6 7 8 9

它完全适合我,但每当我使用向量执行此操作时,它会抛出一个错误:

vector > v={{1,2,3},{4,5,6},{7,8,9}};

int m=v.size();
int n=v[0].size();
for(int i=0;i

它给 :

no match for ‘operator*’ (operand type is ‘std::vector >)

我希望向量确实遵循行主要形式概念作为数组.如果是,那么在向量的情况下,行大调的替代方法是什么?



1> 小智..:

你走错了路.由于std::vector在免费存储上动态分配内存,因此不存在行主要或列主要内容.

从2d阵列int foo[][]{ { 1, 2, 3 }, { 4, 5, 6 } }开始的内存&foo[0]:

1, 2, 3, 4, 5, 6

可视化:

+------+
| foo  |
+------+ 
|  1   |
|  2   |
|  3   |
|  4   |
|  5   |
|  6   |
+------+ 

记忆std::vector> foo{ { 1, 2, 3 }, { 4, 5, 6 } }:

某处(与之无关&foo):

1, 2, 3

别的地方:

4, 5, 6

可视化:

                                                             +------+
                                                        +--> | int  |
+-------------------------+                             |    +------|
| foo                     |                             |    |  1   |
+-------------------------+       +------------------+  |    |  2   |
| std::vector *data -|-----> | std::vector |  |    |  3   |           
+-------------------------+       +------------------+  |    +------+      
                                  | int* data[0]-----|--+
                                  | int* data[1]-----|--+    +------+
                                  +------------------+  +--> | int  |
                                                             +------+
                                                             |  4   |
                                                             |  5   |
                                                             |  6   |
                                                             +------+

遍历你std::vectorstd::vectors:

for (auto const &v_item : v) {
    for (auto const &i : v_item) {
        std::cout <


推荐阅读
author-avatar
政委锤炼_394_774
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有