注册 登录
编程论坛 C++教室

关于两个基类的问题

aiyinsitan 发布于 2010-06-07 22:18, 581 次点击
本人刚学类,程序运行通不过,麻烦各位看一下
#include "iostream.h"
class date{
private:
    int year;
    int month;
    int day;
public:
    date(int year1,int month1,int day1)
    {
        year=year1;
        month=month1;
        day=day1;
    }
    void show_day()
    {
        cout<<year<<":"<<month<<":"<<day;
    }
};
class time{
private:
    int hour;
    int minute;
    int second;
public:
    time(int hour1,int minute 1,int second1)
    {
        hour=hour1;
        minute=minute1;
        second=second1;
    }
    void show_time()
    {
        cout<<hour<<":"<<minute<<":"<<second;
    }
};
class datetime:public date,public time
{
public:
    void datetime(int year1,int month1,int day1,int hour1,int minute1,int scend1):date(year1,moth1,day1),time(hour1,minute1,scend1)
    void show_datetime()
    {date::show();
    time::show();
    }
};
void main()
{
    datetime a(2009,12,2,14,2,3);
    a.show_datetime();
}
   
2 回复
#2
Isilendil2010-06-08 01:05
真的是无语……
把代码复制粘贴后编译,发现完全不是运行通不过,全部都是些低级语法错误
可以断定楼主根本没有根据编译后提示的错误进行认真的调试
#include "iostream.h"    // <> or ""?
void show_day()
void show_day()
void show_datetime()
    {date::show();
    time::show();
    }        //    函数名称……
time(int hour1,int minute 1,int second1)  //    minute后的空格……
void datetime(int year1,int month1,int day1,int hour1,int minute1,int scend1):date(year1,moth1,day1),time(hour1,minute1,scend1)
            //    返回void类型的构造函数……        moth1……    没有函数体,空的也得有个{}吧
这么明显的错误,编译之后依照错误提示不可能发现不了
还有就是不标准的问题
#include <iostream>
using namespace std;
以及
int main ()
{
    //……
    return 0;
}
我学C++时间也不长
初学时犯低级错误没关系,但是首先至少应该自己根据编译信息进行调试吧
没有调试就直接粘贴过来这样的代码,无语了……
#3
aiyinsitan2010-06-08 10:55
楼上说的有道理,措辞犀利,小弟受教了
但是我想说的是,我昨天是没时间去调试了(我们晚上熄灯),所以才把题目发到网上去的
1