在前面已经设计好了产品,价格,数量,充值,购买,花费之类的,现在要添加一个VIP功能,能给先前设计好的商品购买的时候打8折,这要怎么设计,是要用到函数的重载吗?具体要怎么实现啊?
下面的是我弄的,但是我不知道对不对,
在前面已经设计好了产品,价格,数量,充值,购买,花费之类的,现在要添加一个VIP功能,能给先前设计好的商品购买的时候打8折,这要怎么设计,是要用到函数的重载吗?具体要怎么实现啊?
要实现VIP功能,可以在商品类中添加一个成员变量isVIP,表示该商品是否支持VIP折扣。然后在购买时,判断用户是否为VIP,如果是VIP,则将商品价格打8折。可以通过重载购买函数来实现这个功能。
具体实现步骤如下:
示例代码如下:
class Product {
public:
Product(string name, double price, int quantity, bool isVIP = false) {
this->name = name;
this->price = price;
this->quantity = quantity;
this->isVIP = isVIP;
}
void buy(int count, bool isVIP = false) {
if (isVIP && this->isVIP) {
cout << "Total price: " << price * count * 0.8 << endl;
} else {
cout << "Total price: " << price * count << endl;
}
}
private:
string name;
double price;
int quantity;
bool isVIP;
};