出现:'DataTypeEnum' : ambiguous symbol 错误怎么办?
2007-03-30 19:08
225 查看
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
但是在工程应用或封装为动态库时经常会出现:
: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
相关文章推荐
- 出现:'DataTypeEnum' : ambiguous symbol 错误怎么办?
- 出现:'DataTypeEnum' : ambiguous symbol 错误怎么办?
- 出现:'DataTypeEnum' : ambiguous symbol 错误怎么办?
- 出现:'DataTypeEnum' : ambiguous symbol 错误怎么办?
- 出现:'DataTypeEnum' : ambiguous symbol 错误怎么办?
- VC编译出现ambiguous symbol的错误
- 使用duilib出现“error C2872: 'CRect' : ambiguous symbol”等错误
- mount目录访问出现“Value too large for defined data type”错误解决办法
- VMware共享文件夹编译出现“Value too large for defined data type”错误的解决办法
- 出现ORA-03115:unsupported network datatype or representation错误的解决方法
- p = data.boxplot() #画箱线图,直接使用DataFrame的方法 过程中出现错误
- 出现svchost.exe应用程序错误,该内存不能为written怎么办?
- SenchaTouch中出现数据覆盖 以及 “Cannot call method 'setData' of nul”l错误的可能原因
- delphi 开发的系统在win7下出现的 'Invalid data type for 'UserPreferencesMask'的解决
- win7出现内存读写错误怎么办?
- FORTRAN “Symbol has no implicit type"错误
- The content of element type "mycat:schema" must match "(schema*,dataNode*,dataHost*)"错误解决办法
- wcf 出现 IsContentTypeSupported 错误
- Linux mount Windows共享后编译出现“Value too large for defined data type”的问
- 出现错误:TextView cannot be resolved to a type