调用父方法

时间:2013-12-12 18:26:26

标签: c++ mosync

我对所有这些c ++的东西都是新手,所以这可能是初学者的问题:

ListScreen.h

#ifndef _LISTSCREEN_H_
#define _LISTSCREEN_H_

#include "MAUI/Screen.h"

namespace CoolPlaces {
    namespace Views {
        using namespace MAUI;

        class ListScreen : public Screen {
            public:
                ListScreen();
                ~ListScreen();

                void keyPressEvent(int keyCode, int nativeCode) {}
                void keyReleaseEvent(int keyCode, int nativeCode) {}
                void pointerPressEvent(MAPoint2d point) {}
                void pointerReleaseEvent(MAPoint2d point) {}
                void pointerMoveEvent(MAPoint2d point) {}
                void show();
        };
    }
}

#endif    //_LISTSCREEN_H_

ListScreen.cpp

  #include "MAUI/Screen.h"
#include "ListScreen.h"

using namespace MAUI;
using namespace CoolPlaces::Views;

void ListScreen::show() {
    Screen::show();
};

我在此D:\MosyncProjects\Views\ListScreen.cpp:22: Error: Unresolved symbol '__ZN4MAUI6Screen4showEv' line 22调用中收到此错误:Screen::show();(出于本主题的目的,我删除了一些代码)。那么我到底做错了什么呢?

1 个答案:

答案 0 :(得分:4)

你要包含头文件,它告诉函数Screen::show()存在,但可能没有链接具有实现的库。

请参阅此页:http://www.mosync.com/docs/sdk/cpp/guides/libs/working-with-mosync-libraries/index.html

具体来说:

  

除了引用应用程序代码中的头文件外,还需要在项目的构建设置(项目>属性> MoSync项目>构建设置)中指定要使用的实际库:

看起来maui.lib应该包含屏幕代码。