重载运算符“<<”和“>>”,使其能够输入一件商品的信息和输出这件商品的信 息。商品类的信息包括:编号、商品名、价格。具体测试数据自行选定。
时间: 2024-03-17 09:41:30 浏览: 38
好的,这是一个重载运算符“<<”和“>>”实现的商品类示例:
```cpp
#include <iostream>
#include <string>
class Product {
public:
int id;
std::string name;
double price;
friend std::ostream& operator<<(std::ostream& os, const Product& p) {
os << "id: " << p.id << ", name: " << p.name << ", price: " << p.price;
return os;
}
friend std::istream& operator>>(std::istream& is, Product& p) {
std::cout << "Enter product id: ";
is >> p.id;
std::cout << "Enter product name: ";
is >> p.name;
std::cout << "Enter product price: ";
is >> p.price;
return is;
}
};
int main() {
Product p;
std::cin >> p;
std::cout << p << std::endl;
return 0;
}
```
在这个示例中,我们声明了一个名为Product的类,其中包含商品的编号、名称和价格。`operator<<`重载函数用于将商品对象的信息输出到标准输出流中,`operator>>`重载函数用于从标准输入流中读取商品对象的信息。在`operator>>`中,我们使用了std::cout来输出提示信息,然后通过std::cin来读取用户输入的值,并将其存储到Product对象的成员变量中。在`operator<<`中,我们将Product对象的成员变量以一定的格式输出到标准输出流中。
你可以根据自己的需要修改输入输出的格式和实现方式,这只是一个简单的示例。