-1
我第一次在C++中使用VS(2015),並且是創建半途體面代碼的新手。試圖做一些簡單 - 使用初始化列表...但它拋出這個錯誤:「C2280:試圖引用刪除功能」C++初始化程序列表問題 - 錯誤:嘗試引用已刪除的函數
我有(User.h):
class User {
protected:
ICoordinateMapper* _coordMapper;
public:
User(ICoordinateMapper coordinateMapper)
: _coordMapper(coordinateMapper){}
};
如果我重載構造函數如下,它運行良好:
class User {
protected:
ICoordinateMapper* coordinateMapper;
public:
User(){}
User(ICoordinateMapper* coordinateMapper)
: _coordMapper(coordinateMapper){}
};
我的應用程序運行(通過了openFrameworks)爲:
#include "ofApp.h"
int main(){
...
ofRunApp(new ofApp());
}
ofApp.h:
#pragma once
#include "ofMain.h"
#include "User.h"
class ofApp : public ofBaseApp{
public:
...
User user;
}
這是爲什麼?我以爲我不需要在使用初始化列表時重載構造函數?或者我?
謝謝!使用默認參數是有道理的 - 這就是我所缺少的。 – tyhenry