为了账号安全,请及时绑定邮箱和手机立即绑定

现要用一个类调用三个文件来实现,请问要怎么拆分?

现要用一个类调用三个文件来实现,请问要怎么拆分?

C++
撒科打诨 2022-11-21 13:09:49

类与对象
1)实验内容

① 声明一个时间类,时间类中有三个私有数据成员(Hour,Minute,Second)和两个公有成员函数(SetTime和Print_Time)。SetTime根据传递的三个参数为对象设置时间;Print_Time负责将对象表示的时间显示输出。在主函数中,建立一个时间类的对象,设置时间为9点20分30秒并显示该时间。
② 使用构造函数代替上面的SetTime成员函数,并在主函数中使用构造函数设置时间为10点40分50秒,并显示该时间。
③ 重载时间类的构造函数(不带参数)使小时、分、秒均为0。
④ 在时间类的析构函数中输出“Good bye!”
⑤ 定义拷贝构造函数并调用。

请用一个程序来表示出以上5点 并解释每一步

#include<iostream.h>
class Time
{
private:
int Hour,Minute,Second; //声明一个时间类,时间类中有三个私有数据成员(Hour,Minute,Second)
public:
void SetTime(int h,int m,int s)//公有成员函数SetTime
{
Hour=h;
Minute=m;
Second=s;
}
void PrintTime(const Time &t)//公有成员函数SeTime和Print_Time

{
cout<<t.Hour<<"时"<<t.Minute<<"分"<<t.Second<<"秒";
}
Time(int h,int m,int s)//使用构造函数代替上面的SetTime成员函数
{
Hour=h;
Minute=m;
Second=s;
}
Time()//重载时间类的构造函数(不带参数)使小时、分、秒均为0
{
Hour=0;
Minute=0;
Second=0;
}
~Time()//在时间类的析构函数中输出“Good bye!”

{
cout<<"goodbye"<<endl;
}
Time(const Time &t)//⑤ 定义拷贝构造函数并调用。
{
Hour=t.Hour;
Minute=t.Minute;
Second=t.Second;
}

};

void main()
{
Time t;//建立一个时间类的对象
t.SetTime(9,20,30);//设置时间为9点20分30秒并显示该时间
Time tim(10,30,40);//在主函数中使用构造函数设置时间为10点40分50秒
t.PrintTime(t);
t.PrintTime(tim);
Time T;
T.PrintTime(T);//间类的构造函数(不带参数)使小时、分、秒均为0
}

查看完整描述

1 回答

?
慕婉清6462132

TA贡献1502条经验 获得超2个赞

Time类的定义放在文件 time.h中:


class Time {private:    int Hour, Minute, Second;public:    void SetTime(int h,int m,int s);    void PrintTime(const Time &t);    Time(int h,int m,int s);    Time();    ~Time();    Time(const Time &t);};

Time类的成员函数定义放在文件 time.cpp 中:


#include "time.h"#include <iostream> Time::Time() { ... }void Time::SetTime(int h, int m, int s) { ... }// 其他函数的定义类似

main函数放在另外一个文件 main.cpp 中:


#include "time.h" int main()  // 返回int是标准的写法,不要写成void{ ... }


查看完整回答
反对 回复 6天前

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信