C++ error 2872:不明确的符号

来源:互联网 发布:鸿鹊 知乎 编辑:程序博客网 时间:2024/06/11 10:02

C++ error 2872:不明确的符号

简单地说,出现这种情况是因为程序使用的命名空间里已经有这个变量名了


以下是微软给的示例代码:

// C2872.cpp  // compile with: cl /EHsc C2872.cpp  namespace A {     int i;  }  using namespace A;  int i;  int main() {     ::i++;   // ok, uses i from global namespace     A::i++;   // ok, uses i from namespace A     i++;   // C2872 ambiguous: ::i or A::i?    // To fix this issue, use the fully qualified name   // for the intended variable. }  

解决这个问题很简单,两种方法:

1,换掉这个变量名吧,选个不那么坑爹的变量名
2,指定命名空间,这样编译器就能知道到底是哪个命名空间的变量了。

阅读全文
0 0
原创粉丝点击