从派生类初始化构造函数时出现问题

Issue in initialization of constructor from derived class

本文关键字:问题 构造函数 派生 初始化      更新时间:2024-09-24

在.hpp文件中

class top
{
public:
class Base
{  
int x; 
int y;
public:
Base(int p, int q) : x(p), y(q) {}
};
class Derived : public Base
{
public:
Derived():Base ( NULL, NULL ); // error
};
};

我有一个基类和一个派生类。在调用派生类的构造函数时,我想传递基类并用一些参数初始化它。我在这里干什么?

// error

我在这里干什么?

收到错误时,第一步是读取错误消息。

你做错了:

  • 使用NULL初始化整数。NULL仅用于指针。并非所有的空指针常量都是整数文字,因此在所有语言实现中,这可能是格式错误的,也可能不是。此外,根本不应该使用NULL,因为它的所有用例都已被nullptr所取代
  • 您忘记为构造函数提供一个主体。函数体必须是块语句。它可能不是一个null语句,也就是说,它可能不仅仅是;
  • 您忘记了类定义后的分号