county.cpp:13:9: error: constructor for 'County' must explicitly initialize the base class 'Playable' which does not have a default constructor county.h:11:7: note: 'Playable' declared here
时间: 2024-03-23 07:42:45 浏览: 147
gpu.js:GPU加速JavaScript
这个错误是因为在 `County` 类的构造函数中没有显式调用 `Playable` 类的构造函数,而 `Playable` 类没有默认构造函数。因此,需要在 `County` 类的构造函数初始化列表中调用 `Playable` 类的有参构造函数,传递必要的参数。
例如,如果 `Playable` 类的有参构造函数为 `Playable(int id)`,则 `County` 类的构造函数应该这样写:
```c++
County::County(int id, std::string name) : Playable(id), countyName(name) {
// 其他初始化代码
}
```
其中,`Playable(id)` 表示调用 `Playable` 类的有参构造函数,并传递参数 `id`。另外,需要注意的是,初始化列表中的初始化顺序应该与类定义中声明的顺序一致,否则可能会导致一些意外的问题。
阅读全文