重载“<<“实现用实例名调用cout

Posted 帅气的黑桃J

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了重载“<<“实现用实例名调用cout相关的知识,希望对你有一定的参考价值。

前言

功能和java中重写toString方法一样,下面附上一个简单的代码实现"<<"的重载

#include<iostream>
using namespace std;

class Person
{
	public:
		int age;
		Person(int a):age(a){}
		
};

//重载"<<"函数,返回值为ostream
ostream& operator<<(ostream &out, Person &p1)
{
	cout <<"person age :"<< p1.age << endl;
    return out;
}		

int main()
{
	Person p1(1);
	cout << p1.age << endl;
	cout << p1 << endl;
	return 0;
}

运行结果:

1
person age :1

可以说明Person重载了"<<"函数,可以使用对象名直接调用

参考文献:
C++运算符重载

以上是关于重载“<<“实现用实例名调用cout的主要内容,如果未能解决你的问题,请参考以下文章

第四篇 函数

java基础3-重载+命令行传参+递归+数组+排序

通过函数名后加const重载的函数如何区分调用

同名不同命之函数的重载

ios 类方法和实例方法的区别

导航架构片段重载问题