vc++ 编译错误“no appropriate default constructor available”解决方法

来源:互联网 发布:ubuntu tcp调试工具 编辑:程序博客网 时间:2024/05/01 12:04

    在继承一个新类时,出现no appropriate default constructor available这个错误,

   原因:

   

    基类的构造函数需要一个参数,
    而 派生类继承自基类,   所以派生类的构造函数会提前调用基类的构造函数(编译器调的),
    因而,派生类的构造函数需要给基类的构造函数传递一个参数。

 

   解决方法:

   在派生类的构造函数中为基类传递一个参数,

   example:

   class A

   {

        public:

               A(int k);

   };

 

   class B:public A

  {

        public:

        B(int m):A(int k){}

  };