C++ 输入、输出运算符重载
程序员文章站
2022-03-25 22:52:52
C++ 能够使用流提取运算符 和流插入运算符 和插入运算符 using namespace std; class Person{ public: Person(const char str) : name(str){} int GetAge(){ return this age; } / 声明为类的 ......
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; }
推荐阅读
-
详解C++编程中一元运算符的重载
-
C++ 自增、自减运算符的重载和性能分析
-
c/c++赋值函数(重载=号运算符)
-
1.java小作业-计算1到100的整合-指定输入多少行输出就打印多少行-打印24小时60分钟每一分钟-重载基础练习-面向java编程初学者
-
MOOC C++笔记(七)输入输出流
-
C++中的字符串输入输出,转自:https://www.cnblogs.com/zzw1024/p/10502011.html
-
Python基础之输入输出与运算符
-
c/c++ 重载运算符 标准库function的用法
-
c/c++ 重载运算符 关系,下标,递增减,成员访问的重载
-
c/c++ 重载运算符 函数调用运算符