zoukankan      html  css  js  c++  java
  • sicily 7618. 9.5 The Time class

    Description

    Design a class name Time. The class contains:

    Data field hour, minute, and second that represent a time.

    A no-arg constructor that creates a Time object for the current time. (The data fields value will represent the current time.)

    A constructor that constructs a Time object with a specified elapsetime since the middle of night, Jan 1, 1970 in seconds. (The data fields value will represent the current time.)

    Three get functions from the data fields hour, minute, and second, respectively.

    class Time
    {
      public:
        Time();
        Time(int totalSeconds);
        int getHour();
        int getMinute();
        int getSecond();
    };

    Hint

    只提交Time类实现,不要提交main()函数。

    又来挖其他班的作业做了……第一次接触到时间库函数(time.h),查了不少资料。

    NOTE:数据类型time_t和long其实是同义词,time(NULL)可以返回距离1970年1月1日的秒数(time_t类型),向localtime函数传入这样的秒数(注意要传time_t类型的指针)会返回一个存储有各类时间信息的tm结构体指针,其中的tm_hour、tm_min等就是依据给出的秒数换算出的当时的时分秒,结构体里的其他成员信息可以去文档里看。

    自己测试了一下,创建一个用默认值的对象可以正常显示出当前时间

    View Code
     1 #include<time.h>
     2 #include<iostream>
     3 using namespace std;
     4 class Time
     5 {
     6     public:
     7         Time();
     8         Time( int totalSeconds );
     9         int getHour();
    10         int getMinute();
    11         int getSecond();
    12     private:
    13         int hour;
    14         int minute;
    15         int second;
    16 };
    17 
    18 Time::Time()
    19 {
    20     time_t timer = time( NULL );
    21     struct tm *tblock = localtime( &timer );
    22     
    23     hour = tblock->tm_hour;
    24     minute = tblock->tm_min;
    25     second = tblock->tm_sec;
    26 }
    27 
    28 Time::Time( int totalSeconds )
    29 {
    30     time_t timer = (time_t)totalSeconds;
    31     struct tm *tblock = localtime( &timer );
    32     
    33     hour = tblock->tm_hour;
    34     minute = tblock->tm_min;
    35     second = tblock->tm_sec;
    36 }
    37 
    38 int Time::getHour()
    39 {
    40     return hour;
    41 }
    42 
    43 int Time::getMinute()
    44 {
    45     return minute;
    46 }
    47 int Time::getSecond()
    48 {
    49     return second;
    50 }
  • 相关阅读:
    git 账号密码
    sql server 备份
    计算经纬度的两点之间的距离
    redis 安装
    webapi 可空参数
    Asp.Net MVC4 使用Unity 实现依赖注入
    sublime主题推荐
    分解质数因子
    如何在sublime+chrome中调试php代码?
    php的mysql语句里变量加不加单引号问题
  • 原文地址:https://www.cnblogs.com/joyeecheung/p/2945338.html
Copyright © 2011-2022 走看看