簡體   English   中英

未定義對類構造函數的引用

[英]Undefined reference to class constructor

這是我的代碼:

menuState.hpp

#ifndef MENU_STATE_HPP
#define MENU_STATE_HPP

#include "state.hpp"
#include <SFML/Graphics.hpp>

class MenuState : public State
{
    public:
        MenuState();

        static void create(StateListener* Parent, const std::string name)
        {
            MenuState* myState = new MenuState();
            myState->parent = Parent;
            Parent->manageState(name, myState);
        }

        void enter();
        void exit();
        void resume();
    private:

};

#endif // MENU_STATE_HPP

當我執行MenuState* myState = new MenuState();時,得到了對構造函數的未定義引用MenuState* myState = new MenuState(); 我不確定為什么,因為MenuState :: MenuState()在類聲明中的create函數之前。

編輯:我的所有sfml函數也遇到相同的錯誤。

這是確切的構建消息: http : //pastebin.com/e819FhPj

我確實在我的編譯器搜索目錄中鏈接了sfml庫並設置了標頭路徑。

始終最好顯示錯誤的確切文本,但據我所知,您得到的是鏈接器錯誤,而不是編譯器錯誤。 您實際上在任何地方實現了構造函數嗎? 我敢打賭你還沒有。

我不是經驗豐富的C ++開發人員,但似乎MenuState構造函數已聲明但未定義。 替換MenuState(); 使用MenuState(){}可以解決該錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM