双方之间进行操作

来源:互联网 发布:什么叫大数据交易 编辑:程序博客网 时间:2024/04/29 16:33

复制功能的类矩形的一个朋友。因此,功能重复才能访问该成员的宽度和高度(这是私人的)的不同类型的矩形对象。注意到没有在宣言中的复制也不在主以后的使用,复制被认为是类成员函数的矩形的一员。它不是!简单地访问自己的私有的和受保护的成员没有一个成员

友元函数的典型用例两个不同的类访问私有或受保护成员双方之间进行操作

12345678910111213141516171819202122232425262728293031323334// friend class#include <iostream>using namespace std;class Square;class Rectangle {    int width, height;  public:    int area ()      {return (width * height);}    void convert (Square a);};class Square {  friend class Rectangle;  private:    int side;  public:    Square (int a) : side(a) {}};void Rectangle::convert (Square a) {  width = a.side;  height = a.side;}  int main () {  Rectangle rect;  Square sqr (4);  rect.convert(sqr);  cout << rect.area();  return 0;}

在这个例子中,类矩形类的成员函数的矩形方允许访问方私有的和受保护的成员的一个朋友。更具体地说矩形访问成员变量平方它描述了一侧的广场

还有别的东西在这个新的例子:在程序的开始,有一个空的声明类广场。这是必要的因为类矩形使用方(如成员转换参数),和方使用矩形(宣布它的朋友)。

友谊是没有相应的规定:除非在我们的例子中,矩形被方朋友类,但方不被认为是矩形的一个朋友。因此,长方形的成员函数可以访问受保护的和私有成员方而不是周围的其他方法。当然如果需要被宣布的朋友矩形授予该访问

另一个属性的友谊是不及物动词一个朋友的朋友是不被认为是朋友,除非明确规定


0 0
原创粉丝点击