"streambuf" ambiguous symbol的问题如何解决

  会出现这种问题,一般是由于在程序中直接或者间接的同时引用了
 #include <stream.h> 和#inclued<stream>
 这两个一个是c++标准化之前的,一个是标准化之后的
 
 然后如果你又刚好在程序中使用了using namespace std;
 
 这样编译期就无法区别到底是要用哪个stream了。

 比如这次,我在ado2.h中,
 #include <string>
 
 同时又using namespace std;这样在我的程序中就导致了上述错误。
 解决的办法就是将
 using namespace std;改为
 using std::string;
 
 所以,结论就是,尽量不要使用 using namespace std;
 而是用到什么,就引入什么。

posted @ 2008-01-22 22:57  拿走不谢  阅读(3606)  评论(1编辑  收藏  举报