ostream & operator<<(ostream& cout,Person& p)
时间: 2023-08-27 13:06:58 浏览: 64
这是一个重载输出流运算符的函数,它的作用是将一个 Person 类型的对象输出到标准输出流中。具体实现方式可以参考以下代码:
```c++
#include<iostream>
#include<string>
using namespace std;
class Person{
public:
Person(string name,int age):m_name(name),m_age(age){}
friend ostream & operator<<(ostream& cout,Person& p);
private:
string m_name;
int m_age;
};
ostream & operator<<(ostream& cout,Person& p){
cout<<"Name: "<<p.m_name<<", Age: "<<p.m_age<<endl;
return cout;
}
int main(){
Person p("Tom", 18);
cout << p; // 输出 "Name: Tom, Age: 18"
return 0;
}
```
在上述代码中,重载输出流运算符的函数 `operator<<` 被定义为 `Person` 类的友元函数,它可以直接访问 `Person` 类的私有成员变量 `m_name` 和 `m_age`,并将它们输出到标准输出流中。在主函数中,我们创建一个 `Person` 对象 `p`,然后通过 `cout << p` 的方式将其输出到标准输出流中。
相关推荐
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)