今日、ヘッダーのソース コードを調べたboost::asio::ip::addressところ、次の行が見つかりました。
class address
{
// I removed some irrelevant lines here...
public:
/// Compare addresses for ordering.
friend bool operator>=(const address& a1, const address& a2)
{
return !(a1 < a2);
}
};
今、私は何のためにあるのかを知っていますが、クラス定義内でfriend定義が続くのを見たことはありませんでした。
だから私の質問は、このfriend宣言は何をするのですか? operator>=ここではメソッドではないように思えますが、staticキーワードもありません。
この特定のケースではfriend置き換えますか?static