第五周上机实践项目4-静态成员应用
来源:互联网 发布:centos yum安装chrome 编辑:程序博客网 时间:2024/06/05 21:12
/* *Copyright(c)2014,烟台大学计算机学院 *All rights reserved. *文件名称:test.cpp *作者:满星辰 *完成日期:2015年 4月 7日 *版本号:v1.0 *问题描述:设计含有静态数据成员和成员函数的Time类。 静态数据成员是类中所有的对象共有的数据, 在下面的设计中,时钟要采用12小时制,还是要使用24小时制, 显示时,不足两位的数字前是否前导0,都是“影响全局”的设置,适合作为类中的静态数据成员。 *输入描述: *程序输出: */#include <iostream>#include <iomanip>#include <cmath>using namespace std;class Time{public: Time(int h=0,int m=0,int s=0):hour(h),minute(m),sec(s) {}; void show_time( ) //根据is_24和from0,输出适合形式-20:23:5/8:23:5 pm/08:23:05 pm { int h; h=(is_24)?hour:(hour%12); if(!from0) cout<<h<<":"<<minute<<":"<<sec; else { cout<<setw(2)<<setfill('0')<<h<<":"; cout<<setw(2)<<setfill('0')<<minute<<":"; cout<<setw(2)<<setfill('0')<<sec; } if(!is_24) cout<<((hour>12)?" p.m.":" a.m."); cout<<endl; } void add_seconds(int n) //增加n秒钟 { sec+=n; add_seconds(sec/60); sec=sec%60; } void add_minutes(int n) //增加n分钟 { minute+=n; add_minutes(minute/60); minute=minute%60; } void add_hours(int n) //增加n小时 { hour+=n; hour%=24; } static void change24() //改变静态成员is_24,在12和24时制之间转换 { is_24=!is_24; } static void changefrom0() //改变静态成员from0,切换是否前导0 { from0=!from0; }private: 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=true;bool Time::from0=true;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(); return 0;}
图片:
心得:
由于项目二用了一次(XX)?X:X 自我赶脚良好~喜欢这种简洁的画风,会逐渐更改我的风格。
成功忘记给static赋初值= ,=牢记要在类外赋值!!!
0 0
- 第五周上机实践项目4-静态成员应用
- 第五周上机实践项目4——静态成员应用
- 第五周上机项目4 静态成员应用
- 第六周上机实践项目-项目4-静态成员应用
- 第六周上机实践项目 项目4- 静态成员应用
- 第六周上机实践项目4:静态成员应用
- 第五轴上机项目4静态成员应用
- 第五周项目4 静态成员应用
- 第五周 【项目4-静态成员应用】
- 第五周项目4-静态成员应用
- 第五周项目4-静态成员应用
- 第五周 项目4-静态成员应用
- 第五周项目4-静态成员应用
- 第五周 【项目4-静态成员应用】
- 第五周项目4:静态成员应用
- 第五周项目4 静态成员应用
- 第六周上机实践项目——项目4-静态成员的应用
- 第六周上机项目4-静态成员应用
- hdu 3486 Interviewe(二分+rmq)
- try{ return } - catch{}-finally{} 执行情况,内部解析
- poj 1091 跳蚤(不定方程+容斥)
- Win7下JDK环境变量的设置
- 人脸识别技术大总结1——Face Detection & Alignment
- 第五周上机实践项目4-静态成员应用
- error C2258: illegal pure syntax, must be '= 0'
- Java多线程与并发应用-(2)-线程互斥synchronized
- [Shader]NGUI与粒子系统
- Eclipse m2e报Plugin execution not covered by lifecycle configuration
- 金融系列14《QPBOC交易流程》
- POJ 2777 Count Color 线段树无位运算
- 李红霞作业第二章14题
- 设计模式之一 ------------单例模式