专业编程基础技术教程

网站首页 > 基础教程 正文

抓住要点,轻松学习C++,C++快速入门教程之C++友元函数

ccvgpt 2024-07-17 17:56:20 基础教程 12 ℃

C++友元函数


地球上一种很神奇的生物——女人,说起。众所周知,女生不愿意让别人知道的两个秘密,一个是年龄,另一个就是体重了(为什么女生不愿意让别人知道她们的年龄和体重,这很重要吗?)。现在,我们根据这个特性,来创建一个MM类。由于,女生不想要让别人知道她们的年龄和体重,也就意味着,这两个变量是private变量,这样,外界就不能随意访问了。现在,开始创建这个类:

抓住要点,轻松学习C++,C++快速入门教程之C++友元函数

class MM
{
private:
	int age;
	int weight;
public:
	MM(int age, int weight){
		this->age = age;
		this->weight = weight;
	}
	int getAge(void){

		return this->age;
	}
	int getWeight(void){
		return this->weight;
	}
};

现在,我们已经有了MM这个类了。既然小编这种写程序的码畜没有对象,那么就基于这个类,来创建一个MM对象。

MM  mm;

现在,已经有一个对象了,叫mm。
比如,我们现在其他人想要知道mm的年龄,体重,看一下,她同意吗?

程序报错了。当然会报错,你以为你是谁,想知道她体重就知道她体重,想知道她年龄就知道她年龄,别做梦了,她是不会告诉你的。
但是,难道就真的不能直接得到她的年龄吗?当然不是,只有你走进妹子的内心,成为妹子的人你才拥有了解一切的权利,所以,现在,来写一个,boyfriend函数。一定要在mm的内心认可你是friend哦。在mm类中声明:

friend void boyfriend (  MM   boyfriend );

在类内声明这个友元函数之后,我们在类外实现就行了。在友元函数中的对象就具备了解一切的事物了哦。

完整代码如下:

#include <iostream>
using namespace std;
class MM
{
private:
	int age;
	int weight;
public:
	MM(int age, int weight){

		this->age = age;
		this->weight = weight;
	}
	int getAge(void){

		return this->age;
	}
	int getWeight(void){
		return this->weight;
	}
	friend void boyfriend(MM boyfriend);
};
void boyfriend(MM boyfriend)
{
	cout << boyfriend.age << endl;
	cout << boyfriend.weight << endl;
	MM object(100,200);
	cout << object.age << endl;
	cout << object.weight << endl;
}

int main()
{
	MM mm(100, 99);
	boyfriend(mm); 
	system("pause");
	return 0;
}

这篇文章,我觉得已经写的比较的通俗易懂了,希望看完这篇文章的小伙伴们,各位大佬们,能顺手点个赞,表示支持。谢谢!相关的C++视频教程,大家可以关注下小编的专栏:《C++45课视频教程》

Tags:

最近发表
标签列表