C++ C++;,看起来调用了错误的构造函数(常量引用参数)
我的程序没有编译错误 MenuModel::MenuModel(const MenuModel&):无法将参数1从MenuController*const转换为const MenuModel& 我使用C++ C++;,看起来调用了错误的构造函数(常量引用参数),c++,constructor,C++,Constructor,我的程序没有编译错误 MenuModel::MenuModel(const MenuModel&):无法将参数1从MenuController*const转换为const MenuModel& 我使用MenuController类的this调用构造函数,该类是MenuController*,正如预期的那样,但是构造函数,即使其声明为使用MenuController指针,也需要自身的引用 这是我的类中的代码 AbstractModel::AbstractModel(AbstractControll
MenuController
类的this
调用构造函数,该类是MenuController*
,正如预期的那样,但是构造函数,即使其声明为使用MenuController指针,也需要自身的引用
这是我的类中的代码
AbstractModel::AbstractModel(AbstractController * controller) {
std::cout << "AbstractModel constructor called" << std::endl;
this->controller = controller;
objects = new GameObject*[GAME_HEIGHT * GAME_WIDTH];
for (int i = 0; i < GAME_HEIGHT * GAME_WIDTH; i++) {
objects[i] = nullptr;
}
}
MenuModel::MenuModel(MenuController * menuController) : AbstractModel(menuController) {
}
MenuController::MenuController() {
model = new MenuModel(this);
}
AbstractModel::AbstractModel(AbstractController*controller){
std::cout是model
指针类型?如果不是,试试model=MenuModel(这个);
是的,模型被声明为AbstractModel*model;OT,但是你可以做新的GameObject*[x]();
(使用向量会更好)希望你能试试这个:MenuModel::MenuModel(const MenuController*const MenuController)
您使用的编译器是什么?GCC 6.3编译这个GCC 4.3.2也做得很好