2009-10-15 10 views
3

std :: set과 class를 사용하여 결합하려고합니다 :클래스에서 std :: set 사용?

#include <set> 

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

    private: 
     set<int> flags; // this is line 14 
}; 

그러나 set 플래그가 마음에 들지 않습니다. 부분 :

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 

내가 볼 수있는 한, 나는 int 형을 주었다. "변수 설정"행을 다르게 작성합니까, 아니면 허용되지 않습니까?

+4

보너스 포인트를 참조하십시오. 더 많은 사람들이 그랬 으면 좋겠어 :) – jalf

답변

10

std::set을 사용해야합니다. setstd 네임 스페이스에 있습니다.

+0

죄송합니다, 감사합니다! – Jessica

+0

반갑습니다. –

3

std::set을 의미합니다.

3

std :: namespace (모든 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 
관련 문제