【问题标题】:friend declaration in protected section受保护部分中的朋友声明
【发布时间】:2013-07-28 09:56:56
【问题描述】:

在受保护的部分而不是在公共场合声明友谊是否有意义? 例如在这段代码中:

class Shape {
//...
protected:
     friend ostream& operator<<(ostream& os, const Shape& s);
     virtual void print(ostream& os) const = 0;
};

[注意 Shape 是抽象的]

我可以把朋友和函数声明公开吗? 谢谢!

【问题讨论】:

    标签: c++ operator-keyword protected


    【解决方案1】:

    在protected部分声明友谊有没有意思, 而不是在公共场合?

    没有。无论朋友声明出现在类定义的公共、受保护或私有部分中,朋友类都具有相同的访问级别。 link

    我可以把朋友和函数声明放在 公开?

    因此,是的,是否在您的类的私有、公共或受保护部分中找到声明并不重要。

    【讨论】:

      猜你喜欢
      • 2014-09-28
      • 2011-09-15
      • 2012-10-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多