c++类后面带一个:啥意思 class CAboutDlg : public CDialog//啥意思? { public: CAboutDlg(); } 求解释

 我来答
娱乐小八卦啊a
高粉答主

2020-05-15 · 娱乐小八卦,天天都知道
娱乐小八卦啊a
采纳数:256 获赞数:117857

向TA提问 私信TA
展开全部

这说明这是一个继承关系。

继承机制是面向对象程序设计是代码复用的重要手段,它允许程序员在保持类原有特性基础下,进行扩展增加功能。这样产生新的类,称为派生类,继承体现了面向对象设计的层次结构,体现了由简单到复杂的认知过程。

承的三种形式:

1)公有继承——public:基类的公有变为派生类的公有,基类的保护变为派生类的保护,私有派生类不可访问。

2)私有继承——private:基类的公有变为派生类的私有,基类的保护变为派生类的私有,基类的私有不可访问。

3)保护继承——protect:基类的公有变为派生类的保护,基类的保护变为派生类的保护,基类的私有不可访问。

扩展资料

总结:

1、基类的私有成员在派生类中无法访问,如果类内成员不想在类外访问但是想在派生类中访问,可以把类内成员定义为保护,可以看出保护成员限定符是因为继承才产生的。

2、public继承是一个接口继承,他遵从is-a的原则,每个父类的可用成员对子类也可用,因为每个子类对象也都是一个父类对象。

3、protect/private继承是一个现实继承,基类的部分成员并非完全成为子类接口的一部分,是has-a原则所以大多数情况下不会使用这两种继承关系,在绝大多数情况下使用public继承。

4、不管是哪种继承方式,基类的公有和保护成员派生类都可以访问,基类的私有成员存在,但是在派生类中不能访问。

5、当不写继承的关键字时,使用关键字classs时默认为私有继承,struct默认为公有继承。

百度网友7b23e45
推荐于2018-05-10 · TA获得超过204个赞
知道答主
回答量:52
采纳率:0%
帮助的人:37.6万
展开全部
只是一个继承关系,class CAboutDlg : public CDialog说明CAboutDlg这个类以public的方式继承于CDialog,这样CAboutDlg就拥有CDialog类的一切特性,在自己的类里还可以重写基类CDialog里的函数,也可以拥有自己特有的函数
如果只是class CAboutDlg { public: CAboutDlg(); } 说明CAboutDlg 没有基类
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
两脚踏四船
2011-07-28 · TA获得超过811个赞
知道小有建树答主
回答量:200
采纳率:0%
帮助的人:173万
展开全部
:表示继承(当然也有其他意思,不过在这里表示继承)
class CAboutDlg : public CDialog该语句表示CAboutDlg这个类继承自CDialog,public表示继承方式是公有继承

public: CAboutDlg();这个是CAboutDlg类的构造函数,前面的public表示该函数所处的数据域是公有数据域,表示该函数是该类的公有成员,一个类的公有成员函数就是该类的对外接口,谁都可以访问,所以构造函数必须是公有的,要是放在私有数据域,那这个类就基本没什么用了,因为无法实例化该类对象,也就无法在类外使用该类特性(当然,里面的静态成员和静态数据还是可以使用的)!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
aonefeng
2011-07-28 · TA获得超过1335个赞
知道小有建树答主
回答量:379
采纳率:0%
帮助的人:135万
展开全部
CAboutDlg 类是从CDialog类继承而来,这样在CAboutDlg 类就具有所有CDialog类的属性和方法了!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式