在编程里,像界面布局是二维的,那么常常使用二维数组来表示界面的元素,那么就需要使用二维的数组,在现在C++肯定是以标准库为基础了,不再使用C的二维数组,那么怎么样做呢?下面就使用vector来实现二维数组的功能,代码如下:

// ConsoleApplication3.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include <vector>
#include <memory>
#include <string>
#include <iostream>
using namespace std;

int main()
{
	//二维数组
	vector< vector< shared_ptr<string> > > vTest;

	vector < shared_ptr<string> > vTemp;
	vTemp.push_back(make_shared<string>("a"));
	vTemp.push_back(make_shared<string>("b"));
	vTemp.push_back(make_shared<string>("c"));

	vTest.push_back(vTemp);

	for (const auto& v : vTest)
	{
		for (const auto p : v)
			cout << *p << endl;
	}

	//数组的访问方式
	cout << "vTest[0][0]: " << *vTest[0][0] << endl;

	cin.get();

    return 0;
}

在这里vector< vector< shared_ptr<string> > >
实现了二维数组的功能,使用也像二维数组一样。

1. 五子棋游戏开发

http://edu.csdn.net/course/detail/54872. RPG游戏从入门到精通
http://edu.csdn.net/course/detail/5246
3. WiX安装工具的使用
http://edu.csdn.net/course/detail/52074. 俄罗斯方块游戏开发
http://edu.csdn.net/course/detail/51105. boost库入门基础
http://edu.csdn.net/course/detail/50296.Arduino入门基础
http://edu.csdn.net/course/detail/49317.Unity5.x游戏基础入门
http://edu.csdn.net/course/detail/48108. TensorFlow API攻略
http://edu.csdn.net/course/detail/44959. TensorFlow入门基本教程
http://edu.csdn.net/course/detail/436910. C++标准模板库从入门到精通 
http://edu.csdn.net/course/detail/332411.跟老菜鸟学C++
http://edu.csdn.net/course/detail/290112. 跟老菜鸟学python
http://edu.csdn.net/course/detail/259213. 在VC2015里学会使用tinyxml库
http://edu.csdn.net/course/detail/259014. 在Windows下SVN的版本管理与实战 
http://edu.csdn.net/course/detail/257915.Visual Studio 2015开发C++程序的基本使用 
http://edu.csdn.net/course/detail/257016.在VC2015里使用protobuf协议
http://edu.csdn.net/course/detail/258217.在VC2015里学会使用MySQL数据库
http://edu.csdn.net/course/detail/2672


怎么使用C++标准库来实现二维数组的更多相关文章

  1. PIL:Python Imaging Library(图像处理标准库)和Qrcode:二维码生成

    安装PIL Mac或Linux安装命令:sudo easy_install PIL 如果报错:fatal error: 'freetype/fterrors.h' file not found Mac ...

  2. PHP 使用GD库合成带二维码的海报步骤以及源码实现

    PHP 使用GD库合成带二维码的海报步骤以及源码实现 在做微信项目开发过程中,经常会遇到图片合成的问题,比如将用户的二维码合成到宣传海报中,那么,遇到这种情况,利用PHP的GD库也是很容易实现的,实现 ...

  3. PHP 使用GD库合成带二维码和圆形头像的海报步骤以及源码实现

    PHP 使用GD库合成带二维码和圆形头像的海报步骤以及源码实现 之前记录过一篇文章,不过那只是简单将二维码合成到海报中去,这次还要合成头像,而且是圆形.所需要素材就不一一列举,直接代码吧 1.先获取用 ...

  4. js二维数组与字符串

    1. 二维数组:数组中的元素,又引用了另一个数组对象 何时使用:只要保存横行竖列的数据, 具有上下级包含关系的数据, 创建二维数组: 1. var arr=[]; col arr[0]=[" ...

  5. 【C语言入门教程】4.2 二维数组

    C 语言允许使用多维数组,即使用多组小标的数组,二维数组是最常用的多维数组.多维数组在内存中存放数据的顺序与一维数组相同,使用连续的存储单元. 4.2.1 二维数组的一般形式 二维数组的一般声明形式为 ...

  6. 【面试题003】c数组做为参数退化的问题,二维数组中的查找

    [面试题003]c数组做为参数退化的问题,二维数组中的查找  一,c数组做为参数退化的问题 1.c/c++没有记录数组的大小,因此用指针访问数组中的元素的时候,我们要确保没有超过数组的边界, 通过下面 ...

  7. 【原创】只学到二维数组和结构体,不用链表也能写一个C贪食蛇?(四)

    全系列Index: [原创]只学到二维数组和结构体,不用链表也能写一个C贪食蛇?(一) [原创]只学到二维数组和结构体,不用链表也能写一个C贪食蛇?(二) [原创]只学到二维数组和结构体,不用链表也能 ...

  8. [zt]C++二维数组讲解、二维数组的声明和初始化

    定义: int *pia = new int[10]; // array of 10 uninitialized ints 此 new 表达式分配了一个含有 10 个 int 型元素的数组,并返回指向 ...

  9. php 将一个或多个二维数组组合成一个二维数组并根据某个字段排序排序

    最近再写项目的时候,碰到一个问题:如何将一个或多个二维数组组合成一个二维数组并根据某个字段排序排序:实在是想不到哪个php库中有哪个函数能实现,只能自己写一个了,将代码写出来后,发现自己的代码繁琐,并 ...

随机推荐

  1. javascript面向对象的一些写法

    因为有闭包,能返回函数,所以针对于面向对象的封装,继承,多态三个特性实现,很舒服. 代码如下: <!DOCTYPE html> <html> <head> < ...

  2. python 插入查找

    def interpolation_search(data,val): low= high=len(data)- print('查找过程中......') : mid=low+int((val-dat ...

  3. Goroutines和Channels(三)

    clock服务器每一个连接都会起一个goroutine.在本节中我们会创建一个echo服务器,这个服务在每个连接中会有多个goroutine.大多数echo服务仅仅会返回他们读取到的内容,就像下面这个 ...

  4. tmp for cassandra batch delete

    now i have no time to verify this bash script. it is hard for me to delete each data via primary key ...

  5. VSS_01

    1.设置 工作目录 右击 CSDRGis --> Set Working Folder.. --> D:\CSDRGis 2.下载 源码 右击 CSDRGis --> Get Las ...

  6. 动态规划-最长可互除子序列 Largest Divisible Subset

    2018-08-28 17:51:04 问题描述: 问题求解: 本题是一个求最优解的问题,很自然的会想到动态规划来进行解决.但是刚开始还是陷入了僵局,直到看到了hint:LIS,才有了进一步的思路.下 ...

  7. Maven常用dependency记录

    1.servlet配置 <dependency> <groupId>junit</groupId> <artifactId>junit</arti ...

  8. vysor 破解 (插件 V1.7.8 客户端2.1.0)

    0.环境 mac os ===19年更新-客户端破解=== 换了个电脑,老的Chrome 插件各种问题,就换了客户端,然后就是一片模糊... 参考文档:https://www.sdbeta.com/w ...

  9. Linux crontab定时执行任务 命令格式与详细例子(转)

    基本格式 : * * * * * command 分 时 日 月 周 命令 第1列表示分钟1-59 每分钟用*或者 */1表示 第2列表示小时1-23(0表示0点) 第3列表示日期1-31 第4列表示 ...

  10. bzoj 1267 Kth Number I (点分治,堆)

    超级钢琴的树上版本, 类似做法即可, 只不过区间转为dfs序了, 用点分求一下, 复杂度$O(nlog^2n)$ #include <iostream> #include <algo ...