第5周项目静态成员的应用

编号及代码:
/*
*Copyright(c)2015,烟台大学计算机与工程学院
*All rights reserved;
*文件名称:score.cpp
*作者:范星月
*完成日期:2015年4月7日
*版本号:v1.0
*
*问题描述:设计含有静态数据成员和成员函数的Time类,静态数据成员是类中所有的对象共有的数据,在下面的设计中,时钟要采用24进制还是12进制,显示时,不足两位的数字前是否前导数字0,都是影响全局的设置,适合作为类中的静态数据成员
*问题输入:无
*问题输出:
*/

#include <iostream>

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;//true时,为24小时制,为false时,为12小时制
    static bool from0;//为true时,前导0
    int hour;
    int minute;
    int sec;
};
bool Time::is_24=true;//默认为24小时制
bool Time::from0=false;//默认不前导
Time::Time(int h,int m,int s)
{
    hour=h;
    minute=m;
    sec=s;
}
void Time::add_seconds(int n)
{
    sec+=n;
    if(sec>60)
    {add_minutes(sec/60);
    sec=sec%60;}
}
void Time::add_minutes(int n)
{
    minute+=n;
    if(minute>=60)
    {
        add_hours(minute/60);
        minute=minute%60;
    }

}
void Time::add_hours(int n)
{
    hour+=n;
    if(hour>23)
    {
        hour%=24;
    }
}


void Time::show_time()
{
    int h=(is_24)?hour:hour%12;
    if(h<10&&from0)
        cout<<"0";
    cout<<h<<":";
    if(minute<10&&from0)
        cout<<"0";
    cout<<minute<<":";
    if(sec<10&&from0)
        cout<<"0";
    cout<<sec;
    if(!is_24)
    cout<<((hour>12)?"pm":"am");
    cout<<endl;

}
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小时后,切换是否前导0:"<<endl;

   cout<<"t1是:";

   t1.show_time();

   cout<<"t2是:";

   t2.show_time();
    t1.change24();
   cout<<"换一种制式:"<<endl;
   cout<<"t1是:";

   t1.show_time();
     t2.change24();
   cout<<"t2是:";

   t2.show_time();
   cout<<"请按任意键继续"<<endl;
   return 0;

}

 

学习总结:

声明静态函数成员:static void change24();

定义静态函数成员:void Time::change24()
调用静态函数成员:t1.change24();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
系统根据B/S,即所谓的电脑浏览器/网络服务器方式,运用Java技术性,挑选MySQL作为后台系统。系统主要包含对客服聊天管理、字典表管理、公告信息管理、金融工具管理、金融工具收藏管理、金融工具银行卡管理、借款管理、理财产品管理、理财产品收藏管理、理财产品银行卡管理、理财银行卡信息管理、银行卡管理、存款管理、银行卡记录管理、取款管理、转账管理、用户管理、员工管理等功能模块。 文中重点介绍了银行管理的专业技术发展背景和发展状况,随后遵照软件传统式研发流程,最先挑选适用思维和语言软件开发平台,依据需求分析报告模块和设计数据库结构,再根据系统功能模块的设计制作系统功能模块图、流程表和E-R图。随后设计架构以及编写代码,并实现系统能模块。最终基本完成系统检测和功能测试。结果显示,该系统能够实现所需要的作用,工作状态没有明显缺陷。 系统登录功能是程序必不可少的功能,在登录页面必填的数据有两项,一项就是账号,另一项数据就是密码,当管理员正确填写并提交这二者数据之后,管理员就可以进入系统后台功能操作区。进入银行卡列表,管理员可以进行查看列表、模糊搜索以及相关维护等操作。用户进入系统可以查看公告和模糊搜索公告信息、也可以进行公告维护操作。理财产品管理页面,管理员可以进行查看列表、模糊搜索以及相关维护等操作。产品类型管理页面,此页面提供给管理员的功能有:新增产品类型,修改产品类型,删除产品类型。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值