c++输入输出运算符重载
时间: 2023-05-24 14:05:33 浏览: 131
重载输入(提取)和输出(插入)运算符-c++教程谭浩强
C++中,可以对自定义类型的对象使用输入输出运算符(<< 和 >>)进行输入输出操作。实现输入输出运算符的方法是通过重载这两个运算符。一个输入运算符的重载方法通常的套路是:
```cpp
// 某类型的输入运算符重载
istream &operator>>(istream &is, SomeType &obj)
{
// 从流中读取并赋值
is >> obj.something;
return is;
}
```
上述重载方法中,`istream` 类型代表输入流,`SomeType` 类型代表要进行读取的自定义类型,`&obj` 则是要读取的对象的引用。在方法体中,我们可以使用输入运算符(`>>`)和输入流对象(`is`)读取我们需要的数据。
同样,一个输出运算符的重载方法通常的套路是:
```cpp
// 某类型的输出运算符重载
ostream &operator<<(ostream &os, const SomeType &obj)
{
// 将对象的某些数据输出到流中
os << obj.something;
return os;
}
```
上述重载方法中,`ostream` 类型代表输出流,`SomeType` 类型代表要进行输出的自定义类型,`const SomeType &obj` 则是要输出的对象的引用。在方法体中,我们可以使用输出运算符(`<<`)和输出流对象(`os`)将我们需要输出的数据输出到流中。
通过重载输入输出运算符,我们可以让我们的自定义类型对象轻松地进行输入输出操作。
阅读全文