我有以下声明:
friend ostream& operator<<(ostream&,const List&);
我有以下定义:
ostream& operator<<(ostream& out,const List& item) {
vector<List::Employee>::const_iterator It;
for (It=item.employees.begin();It!=item.employees.end();It++) {}
}
员工是我自己的结构,员工是班级列表中员工的私人载体。编译器给出了以下错误:
std::vector<List::Employee,std::allocator<List::Employee>> List::employees is private
任何想法如何解决?
答案 0 :(得分:0)
友元声明应该在List类定义中。
class List{
...
friend ostream& operator<<(ostream&,const List&);
};