为什么在这种情况下不需要std名称空间的作用域运算符?

时间:2019-06-10 10:17:06

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

我尝试了以下操作:

#include <vector>
#include <algorithm>

int main ()
{
    std::vector<int> myVector = {1, 2, 3, 4};
    all_of(myVector.begin(), myVector.end(), [](int i){return i;});
}

由于我没有将std::放在标准命名空间的一部分all_of函数的前面,因此会遇到编译错误。但是与我的预期相反,代码已编译。为什么在这种情况下不需要std::;与在myVector函数中使用all_of有什么关系?

0 个答案:

没有答案