使用ComputerServer类的upgrade成员函数做为Computer类的友元函数
Computer.h
#pragma once
#include <string>
#include "ComputerServer.h" //需要包含友元类的头文件
using namespace std;
class Computer{
public:
Computer();
//把ComputerServer类的upgrade成员函数声明为Computer类的友元函数
friend void ComputerServer::upgrade(Computer *computer);
void description();
private:
string cpu; //计算机cpu芯片
};
Computer.cpp
#include "Computer.h"
#include <iostream>
Computer::Computer()
{
this->cpu = "i5";
}
void Computer::description()
{
cout << "----计算机信息----" << endl;
cout << "CPU:" << cpu << endl;
}
ComputerServer .h
#pragma once
#include <string>
class Computer;
class ComputerServer {
public:
void upgrade(Computer *computer);
};
ComputerServer.cpp
#include "ComputerServer.h"
#include "Computer.h"
void ComputerServer::upgrade(Computer *computer)
{
//把computer的private数据修改为"i9"
computer->cpu = "i9";
}