ifstream作为函数的参数要加&

void foo(ifstream ifs) {} // 编译出错

void foo(ifstream& ifs) {} // 编译成功

原因:stream不能被复制

实现方法:

Make the copy constructor and assignment operator private (like inthe "ios" example - remember members are private by default if youdeclare your class with "class"). If you write any constructors you
don't get the implicit default constructor, so make sure you write at least one accessible constructor or you won't be able to create any objects of this class.

Regards
Buster

posted @ 2011-03-03 11:39  记录点滴  阅读(3108)  评论(0编辑  收藏  举报