C++ 输入流重载:自定义类型输入操作
在 C++ 中,可以使用输入流重载来实现自定义类型的输入操作。
输入流重载的一般形式如下:
istream& operator>>(istream& is, 类型& obj)
{
// 从输入流is中读取数据到obj中
return is;
}
其中,istream是 C++ 标准库中的输入流类,'类型' 是自定义类型的名称,'obj' 是自定义类型的对象。
例如,如果要为自定义类型 Person 实现输入流重载,可以这样写:
class Person {
public:
string name;
int age;
friend istream& operator>>(istream& is, Person& p) {
is >> p.name >> p.age;
return is;
}
};
在这个例子中,输入流重载函数从输入流'is' 中读取两个数据,并分别赋值给 Person 对象'p' 的 name 和 age 成员变量。
使用时,可以像使用 cin 一样使用输入流重载:
Person p;
cin >> p;
这样,就可以从标准输入流中读取数据,并将其赋值给 Person 对象'p' 的 name 和 age 成员变量。
原文地址: https://www.cveoy.top/t/topic/nVbY 著作权归作者所有。请勿转载和采集!