21xrx.com
2024-11-03 21:51:45 Sunday
登录
文章检索 我的文章 写文章
C++输入输出流的操作符重载
2023-07-05 05:20:58 深夜i     --     --
C++ 输入流 输出流 操作符重载

C++语言是一种面向对象的编程语言,重载运算符是实现面向对象编程的重要手段之一。C++提供了输入输出流的操作符重载,能够方便地将一个类的数据结构输出到屏幕或文件,或从键盘或文件中读取数据。

在C++中,输入输出流的操作符重载是通过友元函数来实现的。具体实现方式是在类外定义一个友元函数,函数名为"operator>>"或"operator<<",并将其声明为友元。友元函数可以访问该类的私有成员,从而实现输入输出操作。

下面是一个示例:


class Date {

private:

  int year, month, day;

public:

  friend ostream& operator<<(ostream& os, const Date& d);

  friend istream& operator>>(istream& is, Date& d);

};

ostream& operator<<(ostream& os, const Date& d)

  os << d.year << "-" << d.month << "-" << d.day;

  return os;

istream& operator>>(istream& is, Date& d)

  is >> d.year >> d.month >> d.day;

  return is;

上面的代码定义了一个Date类,并重载了输出流和输入流的操作符。这样,就可以通过下面的代码将Date类的对象输出到屏幕上:


Date d(2022, 12, 31);

cout << d << endl;

也可以通过下面的代码从键盘上读入数据来初始化一个Date类的对象:


Date d;

cin >> d;

通过输入输出流的操作符重载,可以方便地对自定义的类进行数据的输入输出,从而更好地实现面向对象编程的思想。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复