21xrx.com
2024-11-08 22:32:34 Friday
登录
文章检索 我的文章 写文章
C++ 如何输出类的对象
2023-06-26 17:10:15 深夜i     --     --
C++ 输出 对象

C++ 是一门面向对象的编程语言,其中最基本的对象就是类。在 C++ 中,我们可以通过定义一个类来创建对象,并对其进行各种操作和处理。但是,如何输出类的对象呢?下面,我们将介绍几种方法。

方法一:使用类的成员函数

在 C++ 中,每一个类都有自己的成员函数,这些函数可以访问和操作类的数据成员。我们可以在类的成员函数中定义输出类的对象的操作。

例如,在下面这个类的例子中,我们定义了一个成员函数 display(),用于输出类的对象:


class Person {

public:

  void display()

    cout << "Name: " << name << endl;

    cout << "Age: " << age << endl;

  

private:

  string name;

  int age;

};

可以看到,在这个例子中,我们定义了一个名为 display() 的成员函数,其中使用了 cout 对象输出这个类的两个私有成员变量 name 和 age。这样,我们就可以在主函数中调用 display() 函数来输出这个类的对象了。

例如:


Person p;

p.display();

方法二:使用友元函数

另一种输出类的对象的方法是使用友元函数。友元函数是一个不属于类的函数,但可以访问类的私有成员。我们可以为一个类定义一个友元函数来输出这个类的对象。例如,在下面的例子中,我们定义了一个名为 print() 的友元函数:


class Person {

public:

  friend void print(Person p);

private:

  string name;

  int age;

};

void print(Person p)

  cout << "Name: " << p.name << endl;

  cout << "Age: " << p.age << endl;

可以看到,在这个例子中,我们为 Person 类定义了一个友元函数 print()。在 print() 函数中,我们使用了 cout 对象输出这个类的私有成员变量 name 和 age。这样,我们就可以在主函数中调用这个友元函数来输出这个类的对象了。

例如:


Person p;

print(p);

方法三:重载运算符<<

最后一种方法是通过重载输出运算符<<来输出类的对象。重载运算符<<将使得我们可以像输出基本数据类型一样输出类的对象。

例如,在下面的例子中,我们定义了一个名为 Person 的类,并重载了运算符<<:


class Person {

public:

  friend ostream& operator<< (ostream& out, const Person& p)

    out << "Name: " << p.name << endl;

    out << "Age: " << p.age << endl;

    return out;

  

private:

  string name;

  int age;

};

可以看到,在这个例子中,我们定义了一个友元函数 operator<<,并重载了 ostream 类的运算符<<。在这个函数中,我们使用了 ostream 对象 out 输出这个类的私有成员变量 name 和 age。然后,返回 out 对象。

这样,我们就可以在主函数中使用 cout 输出这个类的对象了。

例如:


Person p;

cout << p;

总结

在 C++ 中,我们可以使用类的成员函数、友元函数以及重载运算符<< 等方式来输出类的对象。这些方法各有优点和适用场合,我们应该根据实际情况选择合适的方法。

  
  

评论区

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