需要协助代码才能返回并显示“菜单”

时间:2015-04-28 04:46:12

标签: c++ c++11 default-constructor

我正在使用变量和类创建一个小项目:

http://pastebin.com/NpU6E4e5

当我使用默认构造函数更改变量时,它们的值不会更改。

git pull

这是默认构造函数。它无法更改在其主类water::water() { cout<<"What would you like to do?"<<endl; cout<<"0. Get current stats of water"<<endl; cout<<"1. Raise water temperature by certain degrees"<<endl; cout<<"2. Decrease water temperature by certain degrees"<<endl; cin >> do_what; cout<<do_what; switch(do_what) { case 0 :check_status(); break; case 1 :heat_water(); break; default:cout<<"Enter proper value!"<<endl; //system("cls"); //water(); break; } }

中声明的变量值

1 个答案:

答案 0 :(得分:1)

main函数中,您可以创建一个名为water的{​​{1}}对象,这是您正在使用的对象。当您在THAT对象上调用函数(例如w1add_ph)并再次调用add_temp时,不会重建water()对象:您正在创建 w1对象,构建它然后立即被破坏。你可以通过在waterwater::water(分别是构造函数和析构函数)中设置一个断点来看到这一点。

如果您尝试修改原始water::~water对象water,则应创建一个w1函数,将某些内容重置为您想要的内容(我假设是打印出来的)控制台的东西,并再次要求用户输入?)。

您可能还想尝试以下内容:

Reset

请注意,此答案基于链接的代码和您的原始问题。