20 C++ Basic Friends

1. Tomomoto

A class can allow other classes or functions to access its non-public members by making other classes or functions its friends.

#include <iostream>
#include <vector>
#include <string>

using namespace std;

class Sales_data {
    // 友元声明
    // 友元只能出现在类定义的内部
    friend Sales_data add(const Sales_data&, const Sales_data&);
    friend istream &read(istream&, Sales_data&);
    friend ostream &print(ostream&, Sales_data&);



    private:
        string bookNo;
        unsigned unit_sold;
        double revenue;

    public:
        Sales_data(string &s) : bookNo(s){}
        Sales_data &combine(const Sales_data&);

   Sales_data add(const Sales_data&, const Sales_data&);
   istream &read(istream&, Sales_data&);
   ostream &print(ostream&, Sales_data&);
}

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324716949&siteId=291194637