关于以string类型的容器,容器中字符串的操作
最近总是遇到string类型的操作,今天把我掌握的方法都先记录下来。直接进主题吧!常常用到Vector ,list ,如何遍历里面的类型呢,看过STL的朋友,都会用迭代器。如下://同一都支持迭代器操作,这里只讲一个关于string操作vector strVec;strVec.push_back("this is a test!");strVec.push_back("T
·
最近总是遇到string类型的操作,今天把我掌握的方法都先记录下来。直接进主题吧!
常常用到Vector<string> ,list <string>,如何遍历里面的类型呢,看过STL的朋友,都会用迭代器。如下:
//同一都支持迭代器操作,这里只讲一个关于string操作
vector<string> strVec;
strVec.push_back("this is a test!");
strVec.push_back("The first data");
strVec.push_back("wo cheng gong la !");
vector<string> :: const_iterator vectIt = strVec.begin();
for (;vectIt != strVec.end(); ++vectIt)
{
printf("string: %s\n",(*vectIt).c_str());
}
//还有一个翻转打印的方法
vector<string> :: reverse_iterator RvectIt = strVec.rbegin();
for (;RvectIt != strVec.rend(); ++ RvectIt)
{
printf("string : %s\n",(*RvectIt).c_str());
}
当然如果是顺序取出查看,可以直接用front()操作,然后pop_back(),就可以一个一个取出来应用,主要针对的是队列和链表,当然vector也有相应的操作。
也可用另一种方法,和普通遍历一样,就是需要强制改一下类型:
for (int i = 0; i < strVec.size(); ++i)
{
printf("other string : %s \n",(char*)strVec[i].c_str());
}
这样的话取出任何一个字符串都容易操作。今天就写这么多,Ok。
更多推荐
已为社区贡献1条内容
所有评论(0)