c++ - 错误:__cxxabiv1::__si_class_type_info 的 libc++abi.dylib`vtable

标签 c++ ios cocos2d-x

我正在为 iOS 6/7(使用 Xcode 5 和 iOS SDK 7.0)构建一个使用 cocos2d-x 的游戏,并开始引入一些利用继承的模式,但我遇到了这个异常。

libc++abi.dylib`vtable for __cxxabiv1::__si_class_type_info:
0x284a540:  addb   %al, (%eax)
0x284a542:  addb   %al, (%eax)
0x284a544:  jo     0x284a4eb                 ; vtable for __cxxabiv1::__libcxxabi::__void + 91
0x284a546:  testb  (%edx), %al
0x284a548:  lesl   2(%edx,%eax,4), %ebx
0x284a54c:  movl   $2046984796, %edx
0x284a551:  popl   %esp

代码看起来是这样的:

     for (auto enemyItr = EnemyQueue::getEnemyContainer().begin(); enemyItr != EnemyQueue::getEnemyContainer().end(); ++enemyItr)
            {
                EnemyCharacter *enemyCharacter = dynamic_cast<EnemyCharacter*>(*enemyItr);
                CCSprite *enemy = enemyCharacter->getCharacterSprite(); // inhertiance introduced to EnemyCharacter class

                CCRect enemyMeleeRect = enemy->boundingBox(); //-> exception
}

我认为这是一个链接器错误,并尝试包括 libstdc++“Link Binary with Libraries”。我也尝试在其他链接器标志中包含“-lstdc++”,但异常仍然存在。

有什么办法吗?

最佳答案

我有同样的错误,从 Build Phases -> Link Binary With Libraries 添加 libstdc++.dylib 解决了错误。希望它能帮助其他人解决这个问题。

关于c++ - 错误:__cxxabiv1::__si_class_type_info 的 libc++abi.dylib`vtable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20736455/

相关文章:

c++ - 打印包含 multimap 的双端队列

ios - iPad 上的默认图标 - 适用于 iPhone 应用程序

iphone - 是否可以调用过去的日期UILocal Notification?

android - 如何在 cocos2d-x 中使用 SimpleaudioEngine 的 pitch, pan, gain 选项

android - 在 Cocos2d-x 中比较字符串时出错

c++ - C++ 中的常见错误和修复

c++ - bool 之前的预期声明说明符或 '...'

c++ - 初始化列表是否适用于基类?

ios - iOS7中MKAnnotationView与其rightCalloutAccessoryView的布局关系发生了变化

c++ - Cocos2d-x 子类化问题 CCMenuItemImage