我遇到了好友功能问题。无法初始化好友功能运算符<<
我认为这是所需代码的唯一部分..我的问题是与此功能。它说问题出在第一行,但我不知道这是多么准确。
friend ostream & operator << (ostream & b, Book & a)
{
b.setf(ios::fixed | ios::showpoint);
b.precision(2);
b << "Title : \"" << a.title << "\"\n"
<< "Author : \"" << a.author << "\"\n"
<< "Price : $" << a.price/100.0 << endl
<< "Genre : " <<a.genre << endl
<< "In stock? " << (a.status ? "yes" : "no") << endl
<< endl;
return b;
}
我得到的错误: lab10.cpp:95:错误:无法初始化友元函数âoperator< <â
lab10.cpp:95:错误:友元声明不上课定义
在此先感谢
这解决了我的问题。非常感谢您的投入。朋友的功能仍然让我感到困惑。 – user1028985
请注意,只有通过ADL才能看到类体内定义的朋友函数。尽管如此,运营商无论如何都有望被使用。 –