80天堂网,玻镁复合风管,洪荒青莲圣卷
C++ 能够使用流提取运算符 >> 和流插入运算符 << 来输入和输出内置的数据类型。我们可以重载流提取运算符和流插入运算符来操作对象等用户自定义的数据类型。
在这里,有一点很重要,我们需要把运算符重载函数声明为类的友元函数,这样我们就能不用创建对象而直接调用函数。
下面的实例演示了如何重载提取运算符 >> 和插入运算符 <<。
#include <iostream> using namespace std; class Person{ public: Person(const char *str) : name(str){} int GetAge(){ return this->age; } /* 声明为类的友元函数 */ friend ostream& operator<<(ostream& output, Person &p){ output << p.name << endl; return output; } friend istream& operator>>(istream& input, Person &p){ input >> p.age; return input; } private: const char *name; int age; }; int main() { Person p("Tom"); /* 重载输出名字 */ cout << p; /* 重载输入年龄 */ cin >> p; /* 输出年龄 */ cout << p.GetAge() << endl; return 0; }
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
如何在没有core文件的情况下用dmesg+addr2line定位段错误
用QT制作3D点云显示器——QtDataVisualization
网友评论