静态数据成员应用
2016-04-17 13:08
190 查看
#include <iostream> #include<cstdlib> using namespace std; class Time { public: Time(int=0,int=0,int=0); void show_time(); void add_seconds(int ); void add_minutes(int ); void add_hours(int ); static void change24(); static void changefrom0(); private: static bool is_24; static bool from0; int hour; int minute; int sec; }; bool Time::is_24=true; bool Time::from0=false; Time::Time(int _hour,int _minute,int _sec) { hour=_hour; minute=_minute; sec=_sec; } void Time::show_time() { int _hour; if(is_24) _hour=hour; else _hour=hour%12; if (_hour<10&&from0) cout<<'0'; cout<<_hour<<':'; if(minute<10&&from0) cout<<'0'; cout<<minute<<':'; if(sec<10&&from0) cout<<'0'; cout<<sec; if(!is_24) if (hour>12) cout<<" pm"; else cout<<" am"; cout<<endl; } void Time::add_seconds(int n) { sec=sec+n; if(sec>=60) { sec=sec%60; minute=minute+sec/60; if(minute>=60) { minute=minute%60; hour=hour+minute/60; } if(hour>=24) hour=hour%24; } } void Time::add_minutes(int n) { minute=minute+n; if(minute>=60) { minute=minute%60; hour=hour+minute/60; } if(hour>=24) hour=hour%24; } void Time::add_hours(int n) { hour=hour+n; if(hour>=24) hour=hour%24; } void Time::change24() { is_24=!is_24; } void Time::changefrom0() { from0=!from0; } int main() { Time t1(23,14,25),t2(8,45,6); cout<<"24时制, 不前导:"<<endl; cout<<" t1是:"; t1.show_time(); cout<<" t2是:"; t2.show_time(); t1.add_hours(10); t2.add_hours(10); Time::changefrom0(); cout<<"10小时后, 切换是否前导:"<<endl; cout<<" t1是:"; t1.show_time(); cout<<" t2是:"; t2.show_time(); t1.change24(); cout<<"换一种制式:"<<endl; cout<<" t1是:"; t1.show_time(); cout<<" t2是:"; t2.show_time(); system("pause"); return 0; }
相关文章推荐
- rs485引脚定义
- 编译第一个opencv测试程序
- numeric(x+y,y)的长度与位数
- JS原型详解
- iOS UIScrollView和 cell加载子视图偏移64问题
- 不动点
- 汉字转拼音(域名)
- 分数类的雏形
- eclipse安装Spring插件后无法使用maven
- PHP--each与list的用法
- 拍摄照片和视频
- Eclipse使用Maven创建Web时错误:Could not resolve archetype
- 带武器的游戏角色
- 数据结构之递归
- 为浏览器添加Bing搜索引擎
- #define的基本用法
- D3.js人物关系图
- IP地址
- 《Linux内核设计与实现》第四章读书笔记
- java的常用算法