怎么把vector中的某一个元素替换成别的?

maowu 2005-01-23 12:54:12
其中myVecoter是一个 vector<string>;
find 和 replaceWith 都是string.

vector<string>::const_iterator c_iter = myVector.begin();
vector<string>::const_iterator c_iter_end = myVector.end();
while(c_iter != c_iter_end)
{
if (find == *c_iter)
{
*c_iter = replaceWith;//编译到这里出错了.

break;
}
c_iter++;
}
...全文
2307 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
useresu 2005-01-23
  • 打赏
  • 举报
回复
为什么要用const迭代器呢?
idler(偶是豆子。。。) 的说法很正确啊。
lw1a2 2005-01-23
  • 打赏
  • 举报
回复
汗~~
回完了
lw1a2 2005-01-23
  • 打赏
  • 举报
回复
vector<string>::const_iterator iter = myVector.begin();
vector<string>::const_iterator c_iter_end = myVector.end();
while(c_iter != c_iter_end)
{
if (find == iter)
{
iter = replaceWith;//编译到这里出错了.
}
iter++;
}
----------
const_iterator是const型的指针,不能改变
idler 2005-01-23
  • 打赏
  • 举报
回复
vector<string>::const_iterator c_iter = myVector.begin();
改成
vector<string>::iterator c_iter = myVector.begin();
idler 2005-01-23
  • 打赏
  • 举报
回复
你用的是const_iterator,当然不能写了。

64,639

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧