ado.h,ado.cpp等是一个ado封装类 ,较容易使用,流传很广

但是在工程应用或封装为动态库时经常会出现:

:error   C2872:   'DataTypeEnum'   :   ambiguous   symbol

:   error   C2872:   'ParameterDirectionEnum'   :   ambiguous   symbol  

等类似错误,网上给出的一些解决方法都是治标不治本,比如使用namespace ,

rename("DataTypeEnum","adoDataTypeEnum"),在DataTypeEnum前使用ADODB::域引用等.

error C2872错误,究其根本是该类型同名出现多个数据库类下,所以我们只要把不需要的数据库支持类去掉即可,经过察看stdafx.h头文件,发现在里面默认启动了MFC DAO数据库类支持,而该类里面同时定义了与ADO类相同的枚举类型等定义,

因此注释掉stdafx.h里面的dao包含文件即可:

//#ifndef _AFX_NO_DAO_SUPPORT
//#include <afxdao.h>   // MFC DAO database classes
//#endif // _AFX_NO_DAO_SUPPORT

相关文章:

  • 2021-11-04
  • 2021-11-24
  • 2022-01-05
  • 2021-07-05
  • 2021-05-05
  • 2021-11-13
  • 2022-12-23
  • 2021-09-18
猜你喜欢
  • 2021-12-05
  • 2021-06-08
  • 2022-12-23
  • 2021-10-04
  • 2021-08-06
  • 2021-12-28
  • 2021-05-11
相关资源
相似解决方案