基类的源代码

我们将开发出本课的课程。

添加新的功能

因为我们可以访问基类的源代码,可以直接添加功能基。然而,有些时候我们不想,或者不能。考虑的情况下,你已经购买了一个图书馆的代码从第三方供应商,但需要一些额外的功能。你可以添加到原代码,但这不是最好的解决方案。如果卖方发送给你一个更新?你将被覆盖,或你必须手动迁移。这也是常见的开发商发布包含类定义头文件,但释放的实现代码编译-这意味着你可以使用代码,但你不必直接修改它的能力。

在任何情况下,最好的答案是派生自己的类,并添加你想导出类的功能。

基类中的一个明显的遗漏是访问m_nvalue公众的方式。通常我们会在基类中写访问功能,举例来说,我们将它添加到派生类取代。因为m_nvalue已被声明为基类中派生的保护,直接访问它。

在派生类中添加新的功能,只是宣布在派生类的正常功能:

1
2
3
4
5
6
7
8
9
10
class Derived: public Base
{
public:
    Derived(int nValue)
        :Base(nValue)
    {
    }
 
    int GetValue() { return m_nValue; }
};

现在, 公众将能够 调用 getvalue() 来访问 m_nvalue 价值
1
2
3
4
5
6
7
int main()
{
    Derived cDerived(5);
    cout << "cDerived has value " << cDerived.GetValue() << endl;
 
    return 0;
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值