C++ - std::set未声明

8
#include <iostream>

 using std::set;
 using std::cout;
 using std::endl;

报告错误:

Josephus_Permutation.cpp:3:13: error: ‘std::set’ has not been declared

std::set 应该是 std 命名空间下的 STL,为什么会出现未声明的情况?


绝大部分的std库只是为您实现的方便的C++类。 - Alex Chamberlain
3
尽管这个问题被关闭并标注为“不可能对未来的访问者有帮助”,但它实际上帮了我大忙。 - embeepea
1个回答

24

它位于std命名空间中,但您需要包含相应的头文件:

#include <set>

<iostream> 头文件仅包含标准输入/输出库,其中包括 std::coutstd::endl。然而,std::set 是在 <set> 中定义的。


3
看起来我问了一个愚蠢的问题...谢谢。 - CDT
@CDT:谦逊可以走得更远。 - user195488

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