1.有以下程序:(源文件命名:E11_1.cpp) #include <iostream>2。 using namespace std; 3. class Time 4. 5. public: int hour; 6 int minute; int second;}; 10. int main()11.{ 12. Time time; 13 cin >> time hour >> timeminute >> time.second; 14 cout <<time,hour <<":…<<timeminute <<":" << timesecond << endl: 15. return 0; 16.} 改写程序,要求: 1) 将数据成员改为私有的; 2) 在类体外定义成员函数实现输入和输出的功能;3) 定义无参构造函数,初始化对象数据成员值为0 然后编译并运行程序。请分析什么成员应指定为公用的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好放在类外定义?//源码
时间: 2024-03-01 21:49:41 浏览: 64
使用include <iostream>时一定要加using namespace std
改写后的程序如下:
```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()
{
cin >> hour >> minute >> second;
}
void showTime()
{
cout << hour << ":" << minute << ":" << second << endl;
}
};
int main()
{
Time time;
time.setTime();
time.showTime();
return 0;
}
```
在这个程序中,数据成员应该指定为私有的,因为私有成员只能通过成员函数来访问,可以保证数据的安全性。而公用成员应该指定为成员函数,因为成员函数可以访问私有成员,并且可以对其进行控制和保护。
在类中最好定义成员函数,因为这样可以访问私有成员,并且将代码组织得更加清晰。而在类外最好定义构造函数,因为构造函数的作用是初始化对象,不需要访问私有成员。
阅读全文