none
如何解决 'class' type redefinition 的确问题 RRS feed

  • 问题

  • 原来Stdafx.h中
    #import "C:\Program Files\Common Files\System\ado\msado15.dll"  no_namespace rename("EOF","adoEOF")
    现在又
    #import "C:\Program Files\Common Files\Microsoft Shared\OFFICE11\MSO.dll"
    但报很多错

    error C2011: '_Application' : 'class' type redefinition
    error C2011: '_Global' : 'class' type redefinition
    error C2011: 'FontNames' : 'class' type redefinition
    error C2011: 'Languages' : 'class' type redefinition
    .....................................
    遇到此种问题该如何解决,以前没有遇到过
    望指教,谢谢


    yu
    2009年10月16日 15:17

答案

  • 如果你一定要把两个import导入到同一个名称空间,用rename("_Application","adoApplication")、rename("_Application","MSOApplication")这样的改名方法来避免名称冲突
    推荐的办法还是导入到不同namespace。


    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful.
    Visual C++ MVP
    • 已标记为答案 Tim Li 2009年10月30日 9:36
    2009年10月16日 16:47
    版主