当前位置: 代码迷 >> 综合 >> Reference to '*****' is ambiguous;之类的问题解决
  详细解决方案

Reference to '*****' is ambiguous;之类的问题解决

热度:6   发布时间:2023-12-12 13:38:26.0

造成这个问题的原因是:

        '*****'在一个以上的命名空间内被定义,使得有多个'*****'同时满足,系统不知具体使用哪一个;


如boost和std中都定义了function函数类型模板,如果在程序开头,同时使用using namespace std;和
using namespace boost;就会出现Reference to 'function' is ambiguous,的错误提示。

解决此类问题的办法是:尽量不要使用 using namespace xx;, 
       而是要用包含命名空间的变量类型,类似:using std::function; 或 std::function<void*(void*)>等

  相关解决方案