C++存取数据元素和设置成员函数的写法是怎么写的?
题目:
设计一个时间类Time,包含3个数据成员,时h,分m,秒s,另外包括存取各个数据元素和设置时间的成员函数,按12小时制输出时间. 设计成员函数disp12(),以及默认构造函数,默认时间0时0分0秒 ,main()函数已经给出
int main() {
Time t1(13, 45, 12), t2(9, 30, 50);
t1.disp12();
t2.disp12();
return 0;
}
// 输出
01:45:12PM
09:30:50AM
- 存取数据元素的函数有没有写对? 该怎么写?
#include
#include // 自动补0 依赖头文件
using namespace std;
class Time {
private:
int h, m, s;
public:
Time() {}
Time(int hour=0, int min=0, int sec=0){
setH(hour);
setM(min);
setS(sec);
}
void setH(int hour) { h = hour; }
void setM(int min) { m = min; }
void setS(int sec) { s = sec; }
int getH() const { return h ; }
int getM() const { return m ; }
int getS() const { return s ; }
void setTime(int hour, int min, int sec) {
h = getH();
m = getM();
s = getS();
}
void disp12() {
if (h > 12) {
h -= 12;
cout << setfill('0') << setw(2) << h << ":"
<< setfill('0') << setw(2) << m << ":"
<< setfill('0') << setw(2) << s << "PM" << endl;
}
else {
cout << setfill('0') << setw(2) << h << ":"
<< setfill('0') << setw(2) << m << ":"
<< setfill('0') << setw(2) << s << "AM" << endl;
}
}
};
int main() {
Time t1(13, 45, 12), t2(9, 30, 50);
t1.disp12();
t2.disp12();
system("pause");
return 0;
}#笔试题目#