0

私は現在、コンパイラの問題に苦しんでいます。問題は、「EuropeanCountries」(c ++で記述)と呼ばれるMoSyncサンプルアプリの1つを使用して独自のアプリを作成することです。しかし、変更したコードをコンパイルすると、応答として次のエラーが発生します。

Controller.cpp:24:エラー:未解決のシンボル'__ZTVN13Flightmanager6FlightE'、

私はすでに例を数回見ていて、すでに例から私のコードをコピーしましたが、それは問題を解決しません。paticutlarでは、エラーの意味を理解しているかもしれませんが(cの経験はあります)、そのような構造化されたエラーは見たことがありません。名前空間の規則も調べましたが、問題はないはずです。

//Flight.h

namespace Flightmanager
{

class Flight
{
    public:

    static int flightCounter;

    /**
     * The constructor creates the user interface.
     */

    Flight(char *flightnumber, char *gate, char *departure, char *additionalinfo, char *destinationairport, char *destinationairportshort) {

        this->_id = flightCounter;
        flightCounter ++;

        this->_flightnumber = flightnumber;
        this->_gate = gate;
        this->_departure = departure;
        this->_additionalinfo = additionalinfo;
        this->_destinationairport = destinationairport;
        this->_destinationairportshort = destinationairportshort;
    }

    virtual ~Flight();
}

//Controller.h

#include [all other includes]
#include "../Model/Flight.h"

namespace Flightmanager
    {
        Controller::Controller():
                mFlightArray(NULL),
                mCurrentlyShownScreen(NULL)
    {
    initScreenSizeConstants();
    initPlatformType();

//error: Unresolved symbol '__TZVN13Flightmanager6FlightE'.
        initData();
//error: Unresoled symbol '__TZVN13Flightmanager6Flight13flightCounterE'.
        mFlightTableView = new TableViewController(*this);//error: Unresoled symbol '__TZVN13Flightmanager6Flight13flightCounterE'.
        mFlightDetailView = new DetailViewController();
        }
    }

MoSyncバージョン3.2を使用していますビルド日:121219-1556

どうも

4

1 に答える 1

1

次の定義を持つものにリンクする必要があります。

Flight::flightCounter

Flight::~Flight()

それが.oオブジェクトファイルFlight.cpp(またはソースファイル)であるかライブラリであるかは、プロジェクトによって異なります。

于 2013-02-10T23:12:19.300 に答える