第五周 【项目4-静态成员应用】
来源:互联网 发布:算法可以申请专利吗 编辑:程序博客网 时间:2024/05/16 07:05
设计含有静态数据成员和成员函数的Time类。静态数据成员是类中所有的对象共有的数据,在下面的设计中,时钟要采用12小时制,还是要使用24小时制,显示时,不足两位的数字前是否前导0,都是“影响全局”的设置,适合作为类中的静态数据成员。
/**copyright (c) 2015,*All rights reserved*The Author:王争取*Finished Time:2015.4.8*/#include <iostream>#include <iomanip>using namespace std;class Time{public: Time(int=0,int=0,int=0); void show_time( ); //根据is_24和from0,输出适合形式-20:23:5/8:23:5 pm/08:23:05 pm void add_seconds(int); //增加n秒钟 void add_minutes(int); //增加n分钟 void add_hours(int); //增加n小时 static void change24(); //改变静态成员is_24,在12和24时制之间转换 static void changefrom0(); //改变静态成员from0,切换是否前导0private: static bool is_24; //为true时,24小时制,如20:23:5;为flase,12小时制,显示为8:23:5 pm static bool from0; //为true时,前导0,8:23:5显示为08:23:05 int hour; int minute; int sec;};bool Time::is_24=false;bool Time::from0=false;//下面写出静态成员的初始化及各成员函数的定义……void Time::show_time( ){ if(!is_24) { if(!from0) cout<<hour<<":"<<minute<<":"<<sec<<endl; else cout<<setfill('0')<<setw(2)<<hour<<":"<<setw(2)<<minute<<":"<<setw(2)<<sec; } else { if(hour>12) hour-=12; if(!from0) cout<<hour<<":"<<minute<<":"<<sec<<endl; else cout<<setfill('0')<<setw(2)<<hour<<":"<<setw(2)<<minute<<":"<<setw(2)<<sec; }}void Time::changefrom0(){ char ch; cout<<"切换是否前导0 ? Y or N?"<<endl; cin>>ch; if(ch=='Y') from0=true;}Time::Time(int h,int m,int s){ hour=h; minute=m; sec=s;}void Time::add_seconds(int x){ sec+=x; if(sec>=60) { add_minutes(sec/60); sec%=60; }}void Time::add_minutes(int x){ minute+=x; if(minute>=60) { add_hours(minute/60); minute%=60; }}void Time::add_hours(int x){ hour+=x; if(hour>=24) { hour%=24; }}void Time::change24(){ char ch; cout<<"在12和24时制之间转换 ? Y or N?"<<endl; cin>>ch; if(ch=='Y') is_24=true;}int main(){ Time time; int x,y,z; cout<<"分别增加小时,分数,秒数"<<endl; cin>>x>>y>>z; time.add_hours(x); time.add_minutes(y); time.add_seconds(z); Time::change24(); Time::changefrom0(); time.show_time(); return 0;}
0 0
- 第五周项目4 静态成员应用
- 第五周 【项目4-静态成员应用】
- 第五周项目4-静态成员应用
- 第五周项目4-静态成员应用
- 第五周 项目4-静态成员应用
- 第五周项目4-静态成员应用
- 第五周 【项目4-静态成员应用】
- 第五周项目4:静态成员应用
- 第五周项目4 静态成员应用
- 第五周项目四:静态成员应用
- 第五周项目四:静态成员应用
- 第五周 项目四-静态成员应用
- 第五周项目四静态成员应用
- 第五周项目四 静态成员应用
- 第五周项目四---静态成员应用
- 第五周项目四静态成员应用
- 第五周 项目四 静态成员应用
- 第五周项目3-静态成员应用
- Flod
- iOS开发--一些开源的学习资源
- 项目一:体验常成员函数
- leetcode rotate image
- HDU 2795 Billboard(简单线段树)
- 第五周 【项目4-静态成员应用】
- A+B HDU3787
- 【j2ee spring】24、关于配置jpa的时候,提示找不到persistence的名字我的cutter_point
- 硬盘数据恢复
- Linux内核源代码情景分析-进程间通信-管道
- 仅用css+HTML实现图片切换效果
- 黑马程序员 OC基础: 内存管理
- (6)mysql中的字符集
- 【j2ee spring】25、Unable to load configuration. - bean - jar:file: