社区
工具平台和程序库
帖子详情
二维的VECTOR?
certbuggy
2003-11-30 12:04:14
我在编制一个函数的时候想返回一个二维的VECTOR<string>,请问如何实现呢?
...全文
126
10
打赏
收藏
二维的VECTOR?
我在编制一个函数的时候想返回一个二维的VECTOR,请问如何实现呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
abitz
2003-11-30
打赏
举报
回复
2。你可以自己想一下,别人总结的也不一定准。
看看vector的源码,分析一下你自己题的问题。
3。你可以自己构造一个用于此查找的iterator作为find算法的输入。
一个一个的比效率也不差。
abitz
2003-11-30
打赏
举报
回复
vs.net2003没有警告。
用#pragma warning(disable: 这个数忘了,前两天的贴子上右)
lijingze2003
2003-11-30
打赏
举报
回复
对这个三维数组的查找操作不能用stl的函数了吧?
比如Array3D[2][i][0] == "dafad" ,i从0一直到size(),搜索匹配项。
lijingze2003
2003-11-30
打赏
举报
回复
再问一个,这样做的vector与动态生成的3维数组比较,有哪些优缺点?有哪些操作容易出错需要特别注意的?
lijingze2003
2003-11-30
打赏
举报
回复
#include <vector>
#include <string>
#include <iostream>
using namespace std;
int main(int argc, char* argv[])
{
vector<vector<vector<string> > > Array3D;
vector<vector<string> > Array2D;
vector<string> Array1D;
Array1D.push_back("0");
Array1D.push_back("1");
Array1D.push_back("2");
Array2D.push_back(Array1D);
Array1D.clear();
Array1D.push_back("a");
Array1D.push_back("b");
Array2D.push_back(Array1D);
Array3D.push_back(Array2D);
cout << Array3D[0][0][0];
}
我用的vc6.0编译这段程序,出现188个warning.
c:\program files\microsoft visual studio\vc98\include\xutility(20) : warning C4786: 'std::vector<std::vector<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::alloc
ator<char> > > >,std::allocator<std::vector<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > >' : identifier was truncated to '255' charact
ers in the debug information
怎么消除这些warning呢?
abitz
2003-11-30
打赏
举报
回复
to lijingze2003(方圆):
vector[i].push_back(val);
hxblvc
2003-11-30
打赏
举报
回复
返回指针
lijingze2003
2003-11-30
打赏
举报
回复
如果不指定vector<string>的大小呢?如何对vector<string>进行插入操作?
heguobaoceo
2003-11-30
打赏
举报
回复
typedef vector<string>VECTOR_STRING
abitz
2003-11-30
打赏
举报
回复
vector<vector<string> > foo()
{
vector<vector<string> > vec(m, vector<string>(n));//m*n matrix
vec[i][j] = "value"; // 0<=i<m,0<=j<n
return vec;
}
[C++] 怎样初始化
二维
vector
二维
vector
的初始化方法总结初始化一个
二维
vector
,行M,列N学会用大括号初始化
二维
数组初始化一个
二维
vector
,行M,列不固定初始化一个
二维
vector
,行列都不固定leetcode相关例题 以定义一个
二维
整形数组并初始化为例: 初始化一个
二维
vector
,行M,列N // 初始化一个
二维
的matrix, 行M,列N,且值为0
vector
<
vector
<int&g...
03 如何初始化一维
vector
?
如何初始化一维
vector
?
c语言
二维
vector
大小,
vector
作为
二维
数组
vector
本来就是可以用来代替一维数组的,
vector
提供了operator[]函数,可以像数组一样的操作,而且还有边界检查,动态改变大小。这里只介绍用它来代替
二维
的数组,
二维
以上的可以依此类推。1、定义
二维
vector
vector
> v;//注意>和>之间的空格。(c++11之后不用注意
vector
> 后面两个之间的空格了)2、访问
二维
vector
的元素的三种方式如...
二维
vector
可以转
二维
数组使用吗?
前言 由于
vector
重载了下标运算符,且
vector
所储存的数据是连续存储,因此我们可以将
vector
参数直接当作一维数组来使用,但
二维
vector
能否直接转换成
二维
数组来使用呢? 不可以。
vector
转一维数组 首先,参考
vector
转一维数组的情况: using std::
vector
; template <typename T> T *
vector
2array(
vector
<T> v) { return (T *)&v[0]; }
二维
vector
数组
获取行数和列数:可以使用 vec.size() 获取
二维
vector
的行数,使用 vec[0].size() 获取
二维
vector
的列数。- 直接初始化:
vector
<
vector
> vec = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};,这样就创建了一个3行3列的
二维
vector
,并初始化了其中的元素。- 可以使用 vec[i][j] 的方式来访问
二维
vector
中的元素,其中 i 表示行索引, j 表示列索引。
工具平台和程序库
24,854
社区成员
27,330
社区内容
发帖
与我相关
我的任务
工具平台和程序库
C/C++ 工具平台和程序库
复制链接
扫一扫
分享
社区描述
C/C++ 工具平台和程序库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章