两个值得初学者反省的vector问题

MagiSu 2010-07-05 03:54:33
问题1:想要显示std::vector<T> 的内容,就假定有三个元素吧。


std::vector<T>::const_iterator iter=vec.begin();
cout<<(*iter++)<<(*iter++)<<(*iter++)<<endl;


出现什么结果?问题在什么地方?

问题2:求vector的内积:


vector<double> abc;
// fill up vector
fill_up(vec);
double ip=inner_product(abc.begin(),abc.end(),abc.begin(),0);


出现什么结果?问题在什么地方?
...全文
118 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
barbarian110 2010-07-05
  • 打赏
  • 举报
回复
楼上说的对哦,少用为妙,何必自找麻烦
taodm 2010-07-05
  • 打赏
  • 举报
回复
问题是,楼主为啥把这些其实是C语言的垃圾语法细节导致的问题,扣在vector上面?
cuiniu1988 2010-07-05
  • 打赏
  • 举报
回复
我是初学者,没见过inner_product,先去看看
taodm 2010-07-05
  • 打赏
  • 举报
回复
inner_product的问题就留给初学者们吧。
yuxiabo1984 2010-07-05
  • 打赏
  • 举报
回复
顶 1,2楼的回答
hitrose27 2010-07-05
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 taodm 的回复:]
那个,问题1和stl无关吧,不用把月经贴这么反复变形吧。
[/Quote]
乐呵呵的飘过~
wade_2003 2010-07-05
  • 打赏
  • 举报
回复

#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> vec;
vec.push_back(1);
vec.push_back(2);
vec.push_back(3);
vector<int>::const_iterator iter=vec.begin();
cout<<(*iter++)<<(*iter++)<<(*iter++)<<endl;
}


这是运算规则和++运算的问题吧
taodm 2010-07-05
  • 打赏
  • 举报
回复
那个,问题1和stl无关吧,不用把月经贴这么反复变形吧。

64,643

社区成员

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

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