C++ 在类中使用std::set?

C++ 在类中使用std::set?,c++,syntax,C++,Syntax,我尝试使用std::set和类进行组合,如下所示: #include <set> class cmdline { public: cmdline(); ~cmdline(); private: set<int> flags; // this is line 14 }; #包括 类cmdline { 公众: cmdline(); ~cmdline(); 私人: 设置标志;//这是第14行 }; 但是,它

我尝试使用std::set和类进行组合,如下所示:

#include <set>

class cmdline
{
    public:
        cmdline();
        ~cmdline();

    private:
        set<int> flags; // this is line 14
};
#包括
类cmdline
{
公众:
cmdline();
~cmdline();
私人:
设置标志;//这是第14行
};
但是,它不喜欢设置标志;第部分:

cmdline.hpp:14: error: ISO C++ forbids declaration of 'set' with no type
cmdline.hpp:14: error: expected ';' before '<' token
make: *** [cmdline.o] Error 1
<代码> CMDLay.HPP:14:错误:ISO C++禁止声明“没有”类型的SET
cmdline.hpp:14:错误:应为“;”在“之前,您需要使用
std::set
set
位于
std
命名空间中。

您的意思是
std::set
您必须使用std::命名空间(对于所有STL/SL类)


实际标记错误所指行的注释的额外分数。希望有更多的人这样做:)
 std::set< int > myset;
 using namespace std; // don't do this in a header - prefer using this in a function code only if necessary