8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

继承构造函数

Palo 1月前

35 0

为什么这样的代码:class A{ public: display: display: display; };class B: public A{};int main(void){ B *b = new B(5); delete b;} 会导致这些错误:main.cpp: In fun...

为什么这样的代码:

class A
{
    public: 
        explicit A(int x) {}
};

class B: public A
{
};

int main(void)
{
    B *b = new B(5);
    delete b;
}

导致这些错误:

main.cpp: In function ‘int main()’:
main.cpp:13: error: no matching function for call to ‘B::B(int)’
main.cpp:8: note: candidates are: B::B()
main.cpp:8: note:                 B::B(const B&)

B 不应该继承 A 的构造函数吗?

(这是使用 gcc)

帖子版权声明 1、本帖标题:继承构造函数
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由Palo在本站《class》版块原创发布, 转载请注明出处!
最新回复 (0)
  • 使用模板函数绑定所有构造函数怎么样?

    template <class... T> Derived(T... t) : Base(t...) {}
    
返回
作者主题
作者最近主题: