命名空间 "std" 中没有成员 "sort"

24

试图对整数数组进行排序,经过一些搜索,找到了使用 std::sort 的解决方案,但是遇到了这个错误:命名空间 "std" 没有成员 "sort"

为了排除我没有使用 std 命名空间的疑虑,这是我的头文件:

#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <sstream>
#include <string>
using namespace std;

6
在头文件中不应使用 using namespace,因为并非每个包含该头文件的人都希望全局命名空间被污染。 - Mike Seymour
1
更糟糕的是,全局命名空间会被不同的东西污染,具体取决于过去和未来包含头文件的顺序。 - Yakk - Adam Nevraumont
你也不应该在头文件中放置 #include "stdafx.h"。尽管这是一个非常古老的问题,但我评论的目的是帮助未来读者解决像我一样在6年后看到这个问题的困扰。 - drescherjm
1个回答

52

这解决了我在使用Android NDK编译gnustl_static时遇到的错误_namespace“std”没有成员“sort”的问题。对于XCode和Visual Studio中的std :: sort引用正常工作,但是对于NDK,我需要根据此答案添加包含文件。感谢! - Cory Trese

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接