标题:[求助]重载构造函数~
取消只看楼主
六道
Rank: 1
等 级:新手上路
帖 子:120
专家分:0
注 册:2007-9-28
 问题点数:0 回复次数:3 
[求助]重载构造函数~

#include<iostream.h>
class Tdate
{
public:
Tdate(){init(4,15,1995);}
Tdate(int d){init(4,d,1996);}
Tdate(int m,int d){init(m,d,1997);}
Tdate(int m, int d,int y){init(m,d,y);}

protected:
int month;
int day;
int year;

void init(int m,int d,int y)
{
month=m;
day=d;
year=y;
cout<<month<<"/"<<day<<"/"<<year<<endl;
}
};

void main()
{
Tdate aday;
Tdate bday(10);
Tdate cday(1,12);
Tdate dday(1,2,1998);
}


红色部分因为上面类定义的时候虽没参数,但有括号,这里为何不加括号?一加括号就不输出~

搜索更多相关主题的帖子: int STRONG 函数 构造 Tdate 
2007-10-25 17:33
六道
Rank: 1
等 级:新手上路
帖 子:120
专家分:0
注 册:2007-9-28
得分:0 
回复:(xskowscut)本身如果没有重载构造函数的话,声...
恩,前面调用无参构造函数也不用的,头昏了,现在知道了~~

谢谢大家~

★孤独的人是可耻的★
2007-10-25 18:27
六道
Rank: 1
等 级:新手上路
帖 子:120
专家分:0
注 册:2007-9-28
得分:0 
回复:(yanyananlin)用protected可以代替private吗?...

这里应该是可以的,他们的区分主要体现在类的继承中.


★孤独的人是可耻的★
2007-10-25 22:40
六道
Rank: 1
等 级:新手上路
帖 子:120
专家分:0
注 册:2007-9-28
得分:0 
以下是引用lw2007在2007-10-27 18:31:42的发言:

有些数据为了实现保护,我们希望类以外的函数不能调用它,但它的派生类能访问到,就在基类 声明为 protected 权限,那他的继承类就能访问到他了.如果声明为私有,那他的派生类就访问不到了

正解~


★孤独的人是可耻的★
2007-11-01 22:28



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-180746-1-1.html




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

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