21xrx.com
2024-11-09 00:18:44 Saturday
登录
文章检索 我的文章 写文章
C++重载输出运算符,输出Point类对象
2023-07-09 09:23:24 深夜i     --     --
C++ 重载 输出运算符 Point类 对象输出

C++是一种功能强大的编程语言,它提供了许多有用的功能和工具,其中包括重载运算符。重载输出运算符是一种常见的编程技巧,它允许程序员定义如何打印自定义类的对象。在本文中,我们将介绍如何使用重载输出运算符来输出Point类对象。

首先,让我们来看看Point类的定义。Point类表示二维平面上的一个点,它具有x坐标和y坐标两个成员变量。以下是Point类的定义:


class Point {

public:

  Point();

  Point(double x, double y);

  double getX() const;

  double getY() const;

  void setX(double x);

  void setY(double y);

private:

  double m_x;

  double m_y;

};

现在,我们想要使用重载输出运算符来打印Point类对象。要做到这一点,我们需要添加一个重载<<运算符的函数到Point类的定义中。以下是该函数的定义:


std::ostream& operator<< (std::ostream& os, const Point& p) {

  os << "(" << p.getX() << ", " << p.getY() << ")";

  return os;

}

现在,我们可以使用cout来打印Point类对象。以下是一个简单的例子:


int main() {

  Point p1(1.0, 2.0);

  Point p2(3.0, 4.0);

  std::cout << "p1: " << p1 << "\n";

  std::cout << "p2: " << p2 << "\n";

  return 0;

}

运行此代码将产生以下输出:


p1: (1, 2)

p2: (3, 4)

正如我们所看到的,我们可以使用重载输出运算符来输出自定义类的对象。这使得我们的代码更加优雅和易于阅读。通过使用重载输出运算符,我们可以在不牺牲可读性的情况下输出自定义类的对象,这使得我们的代码更加健壮和易于维护。

在实际的应用程序中,Point类可能只是更大、更复杂类层次结构中的一个类。通过使用重载输出运算符,我们可以轻松地输出各种各样的自定义类对象,并使代码更易于阅读和维护。

  
  

评论区

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