error C2872: “count”: 不明确的符号
可能是“conflict.cpp(4) : int count” 或 “C:\Program Files\Microsoft Visual Studio 11.0\VC\INCLUDE\xutility(3251) : iterator_traits<_Iter>::difference_type std::count(_InIt,_InIt,const _Ty &)”
conflict.cpp(12) : error C2872: “count”: 不明确的符号 可能是“conflict.cpp(4) : int count” 或 “C:\Program Files\Microsoft Visual Studio 11.0\VC\INCLUDE\xutility(3251) : iterator_traits<_Iter>::difference_type std::count(_InIt,_InIt,const _Ty &)”
出错代码:
解决办法: 使用命名机制来避免命名冲突,这里count既可以是程序中全局变量count,也可能是std::count
,因此引起歧义,导致出错。
1) 尽量少用directive方式来引用命名空间:(directive方式即using namespace std;)
取而代之,使用use std::cout,引用命名空间的成员,而不是将其置为后续名字的默认命名空间。
2) 使用命名空间引用变量,在命名空间中定义变量、函数和类。