我有一个解决方案来建立一个在其项目属性中启用运行时类型信息的DLL。这是Visual studio 2005中的默认(/ GR)。在我们的库中,我们有很少的dynamic_casts,所以我目前无法在没有运行时类型信息的情况下构建DLL。允许在rtti禁用的应用程序中链接rtti启用的DLL吗?
现在我的客户正在使用DassaultSystèmes的开发工具,该工具声明他们不能使用运行时类型信息。它被禁用(/ GR-)总是。
问题是这是否是一个问题?
我试图用一个小例子来说明这种情况,在这个小例子中,一个动态转换的代码创建了一个DLL。该DLL使用RTTI 启用。一个小应用程序使用DLL,尤其是使用dynamic_casts的代码。此应用程序内置RTTI 已禁用。它工作正常。但随着不可预知的行为任何事情都有可能发生......
我想告诉我的客户,与他们中的一些使用RTTI和其他人不使用RTTI混合的DLL是没有问题的,但我找不到任何关于它的详细信息(使用Google,MSDN等)。有谁知道这个问题的答案吗?