
C++中提到流迭代器it,it->mem这是什么意思
3个回答
展开全部
it是迭代器, 指向一个对象, mem是这个对象的成员
也就是这个对象得有mem成员才行
struct t{int mem;};
istream& operator>>(istream&is,t&m){return is>>m.mem;}
istream_iterator<t> in(cin);
也就是这个对象得有mem成员才行
struct t{int mem;};
istream& operator>>(istream&is,t&m){return is>>m.mem;}
istream_iterator<t> in(cin);
展开全部
把迭代器当指针理解就好多了
追问
#include
#include
#include
#include
#include
using namespace std;
void main(){
istringstream abc;
istream_iterator a(abc);
(*a).eof;
}
这就是你所信仰的指针,失败了 谢谢
追答
你的用法不对吧
你想做什么
(*a)是什么东西
你的a是istringstream类型不是istream_iterator怎么能解引用呢
你混淆了迭代器了
举个简单例子
istream_iterator in_iter(cin),eof;
vector iVec(in_iter,eof);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
it->mean其实就是*(it).mean
更多追问追答
追问
如果 istream_iterator in (cin),你那样用能代表什么吗
追答
istream_iterator in (cin),这个是iostream里面的吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询