在编程里,像界面布局是二维的,那么常常使用二维数组来表示界面的元素,那么就需要使用二维的数组,在现在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> > >
实现了二维数组的功能,使用也像二维数组一样。