c++ 在 class 中使用 bool 和 set 和 get 函数
c++ using bool in a class with set and get functions
我正在尝试创建一个 class 具有私有属性并使用 set 和 get 函数更改值。但是我似乎无法更改 bool 值
class VideoGames {
private:
bool buy;
public:
bool get_buy(){return buy;}
void set_buy(bool b){b = buy;}
};
main(){
VideoGames g1;
double price;
cin >> price;
if(price <=100){
g1.set_buy(true);
}
else {
g1.set_buy(false);
}
cout<<"Buy= " << g1.get_buy()<<endl;
return 0;
}
无论价格是多少,它总是打印出 0。我需要更改什么?
你错失了作业; b = buy;
重新分配参数(然后丢弃,因此没有任何变化),您希望 buy = b;
从 参数重新分配属性 。
当使用“=”符号时,右边会被放在左边,所以不是:
void set_buy(bool b){b = buy;}
写入:
void set_buy(bool b){buy = b;}
我正在尝试创建一个 class 具有私有属性并使用 set 和 get 函数更改值。但是我似乎无法更改 bool 值
class VideoGames {
private:
bool buy;
public:
bool get_buy(){return buy;}
void set_buy(bool b){b = buy;}
};
main(){
VideoGames g1;
double price;
cin >> price;
if(price <=100){
g1.set_buy(true);
}
else {
g1.set_buy(false);
}
cout<<"Buy= " << g1.get_buy()<<endl;
return 0;
}
无论价格是多少,它总是打印出 0。我需要更改什么?
你错失了作业; b = buy;
重新分配参数(然后丢弃,因此没有任何变化),您希望 buy = b;
从 参数重新分配属性 。
当使用“=”符号时,右边会被放在左边,所以不是:
void set_buy(bool b){b = buy;}
写入:
void set_buy(bool b){buy = b;}