有以下程序:(源文件命名:E11_1.cpp) 1. #include <iostream> 2. using namespace std; 3. class Time 4.( 5. public: 6. int hour; 7. int minute; 8. int second; 9. ); 10.int main() 11. ( 12. Time time; 13. cin >> time,hour >> time.minute >time.second: 14. cout << time.hour << ":"<< time.minute << <<time.second << endl; 15. return 0; 16.) 改写程序,要求: 1)将数据成员改为私有的; 2)在类体外定义成员函数实现输入和输出的功能; 3)定义无参构造函数,初始化对象数据成员值为0。
时间: 2024-03-02 13:47:53 浏览: 25
以下是修改后的程序:
```cpp
#include <iostream>
using namespace std;
class Time {
private:
int hour;
int minute;
int second;
public:
Time() { // 无参构造函数
hour = 0;
minute = 0;
second = 0;
}
void setTime() { // 输入时间
cout << "请输入时间(时 分 秒):";
cin >> hour >> minute >> second;
}
void showTime() { // 输出时间
cout << hour << ":" << minute << ":" << second << endl;
}
};
int main() {
Time time;
time.setTime();
time.showTime();
return 0;
}
```
修改说明:
1. 将数据成员 `hour`、`minute` 和 `second` 改为私有的,使得外部无法直接访问。
2. 在类体外定义了两个成员函数 `setTime()` 和 `showTime()`,实现输入和输出的功能。
3. 定义了一个无参构造函数,初始化对象数据成员值为0。在主函数中创建 `time` 对象时,会自动调用这个构造函数进行初始化。