#include <algorithm>是否将符号导入到全局名称空间?

时间:2018-07-03 18:41:02

标签: c++ namespaces std argument-dependent-lookup

让我们考虑这样的代码:

0.125

GCC 6.3 doesn't#include <vector> int main() { vector<int> v = {1, 2, 3}; return 0; } 编译-太好了,我希望如此。我需要编写error: ‘vector’ was not declared in this scope进行编译,很好。

但是,以下does会进行编译:

std::vector

似乎#include <vector> #include <algorithm> int main() { std::vector<int> v = {1, 2, 3}; int c = count(v.begin(), v.end(), 2); return 0; } 已导入全局名称空间。我也尝试过count-一样。

为什么find将名称导入全局名称空间?哪些C ++标准库标头执行此操作,哪些不执行?

0 个答案:

没有答案