| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 615 人关注过本帖
标题:[求助]初学者的一个程序错误
取消只看楼主 加入收藏
没牙的狼
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-4-23
收藏
 问题点数:0 回复次数:3 
[求助]初学者的一个程序错误

#include<iostream.h>

#include<windows.h>
class Base1
{protected:

int number1;
public:
Base1()
{number1=0;
cout<<"number1:"<<number1<<endl;
}
};
class Base2
{protected:
int number2;
public:
Base2(int x)
{
number2=x;

cout<<"number2:"<<number2<<endl;
}
~Base2()
{
cout<<"xi gou:"<<endl;
}
};
class Base3
{protected:

int number3;
public:
Base3(int y)
{
number3=y;

cout<<"number3:"<<number3<<endl;
}
~Base3()
{
cout<<"xi gou:"<<endl;
}
};
class Derive:private Base1,private Base2,private Base3
{private:
Base1 number1base;
Base2 number2base;
Base3 number3base;
public:
Derive(int a,int b);

};
Derive::Derive(int a,int b):number2base(a),number3base(b)
{}

void main()
{
Derive st(4,3);
}
程序目的:三个基类,一个派生类,三个基类有析构,构造函数(一个基类的构造函数无参),派生类有三个私有成员
是三个基类的对象;
从头到尾查了一遍,剩一个错误不知道怎么改:
error C2512: 'Base2' : no appropriate default constructor available
error C2512: 'Base3' : no appropriate default constructor available
请问是什么意思,请高人指点一下..

搜索更多相关主题的帖子: 程序错误 int windows 
2006-04-23 21:44
没牙的狼
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-4-23
收藏
得分:0 
楼上的可能没理解我的意思,number1base;

number1base
number2base
number3base
是三个基类的对象,是派生类私有成员,在运行派生类时要设法调用他们......

2006-04-24 06:40
没牙的狼
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-4-23
收藏
得分:0 

谢谢gototheworld,调出来了,单我不明白:Base2(int x = 0)
Base3(int y = 0)为什么这么写,主函数中st(4,3)不是已经把x,y
赋值了吗?能在稍微解释一下嘛?


2006-04-24 10:36
没牙的狼
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-4-23
收藏
得分:0 
感谢gototheworld,说的很明白,我懂了.

2006-04-24 14:28
快速回复:[求助]初学者的一个程序错误
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016312 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved