我正在使用XCode 3.2在MacOS X 10.6上编译一个简单的wxWidgets应用程序
链接器返回有关两次定义的符号_main
的错误:
在我评论出宏之后:
Implement_App(TestApp)
错误消失了,编译和放大链接,我能够运行该应用程序。
我没有在任何地方找到这个,所以有任何想法吗?
答案 0 :(得分:4)
IMPLEMENT_APP
是wxWidgets中用于创建程序入口点的宏,而不必担心程序是否将在Windows,Mac,* nix或其他任何程序上编译。因此,IMPLEMENT_APP
有来定义main
(或其等价物,例如WinMain
)。
您可能会发现IMPLEMENT_APP_NO_MAIN
macro很有用。检查wx / app.h中的其他IMPLEMENT_APP_XXX
函数。
the wxApp overview中的这一段也有一点帮助:
请注意使用IMPLEMENT_APP(appClass),它允许wxWidgets在wxWidgets初始化的适当位置动态创建应用程序对象的实例。以前版本的wxWidgets过去依赖于创建全局应用程序对象,但不再推荐这样做,因为在应用程序对象构造时可能没有执行所需的全局初始化。