string和vector是两种最重要的标准库类型,string表示可变长的字符序列,vector存放的是某种给定类型对象的可变长序列。 一、标准库类型string 1.定义和初始化string对象:初始化string对象的方式有 string s1 默认初始化,s1是一个空串string s2(s1) s2是s1的副本 string s2=s1 等价于s2(s1),s2是s1的副本 string s3...
vector之所以被认为是一个容器,是因为它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。 vector<string>是字符串容器 比如vector<string> s[2] 这句话的意思就是定义了一个字符串容器,里面可以存放2个字符串 而且string只是定义一个字符串。 类似的还有vec...
vector<char> vchar3(5,'a'); vector<string> vstring3(5,"a"); //第四种:传一段迭代器区间 vector<int> vint4(vint3.begin(),vint3.end()); vector<char> vchar4(vchar3.begin(),vchar3.end()); vector<string> vstring4(vstring3.begin(),vstring3.end()); //第五种:传一个对象,既...
而pair<int,string>就是一个对象类型,该类型对象有两个数据,first是int型,second是string类型。比如可以把一个页码值和该页出现的单词对应起来。吧pair<int,string>放入容器vector就是建立了一个pair类型的集合,就能把每一页的内容集合起来写一本字典。
vector<vector<string>> vvData;string str = vvData[0][1];vector<string> vData = vvData[0];string str2=vData[1];根据vector中元素的数量,直接用下标访问即可
前者是100个一维动态数组, 即100个vector<string>; 后者为二维动态数组, 即元素为vector<string>的vector.就和string a[100] 与 vector<string> a类似, 前者为100个string元素的一维数组, 后者为一维动态数组.
include<fstream>#include<iostream>#include<string>#include<iomanip>int main(int narg, char** arg){ if(narg > 1){ std::ifstream istr(arg[1]); if(istr.is_open()){ std::string tmp; std::streamsize line = 0; while(getline(istr, tmp)){ ++line; /...
vector<string> vstring; //传入迭代器 auto index=std::find(vstring.begin(),vstring.end(),"string2find"); if(index!=vstring.end()){ cout<<"找到了,是第"<<index<<"个"<<endl; }else{ cout<<"找不到"<<endl; } 有用1 回复 查看...
vector<string>vs={"cs","dn"}; 1. 列表初始化会给阅读带来混淆,由于列表中的值既能够表示初始值也能够表示元素数量,编译器会首先觉得是列表初始化(将列表中的值当作初始值来处理)。假设不行,才会考虑其它初始化方式。 vector<int>v1(10);//v1有10个元素,都为0vector<int>v2{10};//v2有1个元素。为...
C++ Primer 第五版上面说,对于C++11标准是没有区别的,但是不同的编译器可能编译的结果不同,老版本的编译器要写成vector<vector<string> > 。否则,系统会认为 >> 是单个符号,为右移操作符,并导致编译时错误。 那么如果编译时没有出错就是能直接写vector<vector<string>>了。