首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

构造函数满载

2013-07-09 
构造函数重载class Tdate{public:Tdate(int d){month 4day dyear 1998coutconstructor1end

构造函数重载

class Tdate{
public:
Tdate(int d){
month = 4;
day = d;
year = 1998;
cout<<"constructor1"<<endl;
}
Tdate(int m,int d = 12){
month = m;
day = d;
year = 1997;
cout<<"constructor2"<<endl;
}

protected:
int month;
int day;
int year;
};

int main(){
Tdate aday(11,2);
getchar();
}

第一个构造函数能调用吗,怎样调用呢 C
[解决办法]
这种参数有默认值的不能构成重载、、
[解决办法]
能编译通过?
[解决办法]
当你定义一个参数的对象的时候,这时候就会报错,因为不知道调用的是哪个构造函数!
[解决办法]
这么为难编译器,那么编译器只能告诉你:这是个未定义行为
[解决办法]
加句Tdate aday(11);能编译过?

[解决办法]
当你调用只有一个实参的构造函数时。。编译器无法进行匹配。。两个函数都可以。。

热点排行