编译器错误 __ZTVN13..6..E

Posted

技术标签:

【中文标题】编译器错误 __ZTVN13..6..E【英文标题】:Compiler Error __ZTVN13..6..E 【发布时间】:2013-02-10 23:03:35 【问题描述】:

我目前正在努力解决编译器问题。问题是,我使用名为“欧洲国家”(用 c++ 编写)的 MoSync 示例应用程序之一来编写我自己的应用程序。但是当我编译修改后的代码时,它给了我以下错误响应:

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();

//控制器.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

谢谢

【问题讨论】:

那么,如何编译代码? 哪个编译器?错位名称的解释取决于编译器。 使用mosync ide。它是一个 eclise 衍生物。我猜它是一个 gnu C++ 编译器(但不太确定) 我认为这是 链接器 错误,而不是编译器错误。 【参考方案1】:

您需要链接具有以下定义的内容:

Flight::flightCounter

Flight::~Flight()

这是 Flight.cpp.o 目标文件(或某些源文件)还是库取决于您的项目。

【讨论】:

谢谢,你把我引向了正确的方向。我需要做的就是实现类信息。因为我也使用 c# 和 java 进行编程,但我没有意识到,我需要始终在 cpp 文件中实现一个类。感谢您的帮助!

以上是关于编译器错误 __ZTVN13..6..E的主要内容,如果未能解决你的问题,请参考以下文章

Swift 编译器错误:“无法使用 '((_) -> _)' 类型的参数列表调用 'map'”

_MM_TRANSPOSE4_PS 导致 GCC 中的编译器错误?

编译器错误 C4244:“正在初始化”:从“__int64”转换为“int”,可能丢失数据

编译错误的含义:错误 C2704:__va_start 内在函数只允许在可变参数中使用?

使用带有类错误的地图,编译错误

Linux gcc编译问题