zoukankan      html  css  js  c++  java
  • 第十六周oj刷题——Problem I: 改错题:类中私有成员的訪问

    Description

    改错题:
    设计一个日期类和时间类,并编写全局函数display用于显示日期和时间。

    要求:display函数作为类外的普通函数,而不是成员函数

    在主函数中调用display函数。display函数分别引用Time和Date两个类的对象的私有数据。输出年、月、日和时、分、秒。

    Input

    年      月       日

    时      分       秒

    Output

    年/月/日

    时:分:秒

    Sample Input

    2013  12   23
    14   23   50

    Sample Output

    2013/12/23
    14:23:50
    /* All rights reserved.
     * 文件名:test.cpp
     * 作者:陈丹妮
     * 完毕日期:2015年 6 月 27 日
     * 版 本 号:v1.0
     */
    #include <iostream>
    using namespace std;
    
    class Time;  //类的提前声明
    class Date   //日期类
    {
    public:
        Date(int y,int m,int d)
        {
            year=y;
            month=m;
            day=d;
        }
        friend void display(const Date &,const Time &);
    private:
        int year;
        int month;
        int day;
    };
    class Time  //时间类
    {
    public:
        Time(int h,int m,int s)
        {
            hour=h;
            min=m;
            sec=s;
        }
        friend void display(const Date &,const Time &);
    private:
        int hour;
        int min;
        int sec;
    };
    void display(const Date & d, const Time & t)
    {
        cout<<d.year<<"/"<<d.month<<"/"<<d.day<<endl;
        cout<<t.hour<<":"<<t.min<<":"<<t.sec<<endl;
    }
    
    int main()
    {
        void display(const Date &,const Time &);
        int year,month,day;
        cin>>year>>month>>day;
        Date d1(year,month,day);
        int hour,minute,second;
        cin>>hour>>minute>>second;
        Time t1(hour,minute,second);
        display(d1,t1);
        return 0;
    }
     
    <img src="http://img.blog.csdn.net/20150629172423488?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbnVmYW5nZG9uZ2Rl/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
     
     
    学习心得:这道题能够用友元函数来定义display()函数。能够訪问类中的私有成员。这样做比較简单了。继续努力!

  • 相关阅读:
    angular、vue使用感受
    API网关在API安全性中的作用
    分享一个国内首个企业级开源的GO语言网关--GoKu API Gateway
    几种部署Goku API Gateway的方式,最快一分钟可使用上网关
    热门开源网关的性能对比:Goku > Kong > Tyk
    如何通过网关做服务编排?
    未来实现API管理系统的几个关键词
    关于未来实现API管理系统的几个关键词
    让API实现版本管理的实践
    医疗行业如何使用API市场?
  • 原文地址:https://www.cnblogs.com/yfceshi/p/7294542.html
Copyright © 2011-2022 走看看