이름

2014-05-10 2 views
2

그래서 다음과 같이 정의 된 클래스가 있습니다이름

class Socket { 
public: 
    Socket(); 
    virtual ~Socket(); 

    int open(); 
    void close(); 

private: 
    int mHandle; 
    int mState; 
}; 

가 그럼 난 같은 close() 메소드 구현 :

void Socket::close() 
{ 
    if (mHandle!=0) 
     close(mHandle); 
} 

"닫기 (mHandle를) "내 주변은 정의 된 AFAIK이며 네임 스페이스 안에 있지 않습니다.

+3

시도':: (mHandle) 확대 : 조회 클래스 멤버를 무시 있도록

::close(mHandle); 

또는 로컬 이름을 선언하고, 적절한 장소에서 찾고 시작, 그래서 당신은 이름을 규정 할 수 루트 네임 스페이스에서 힘을 찾으십시오 – jsantander

답변

4

이름 조회가 가능한 한 빨리 적어도 하나의 기능이 발견 종료 ...

는 뭔가 다른 나의 가까운 개명 해결하려면,하지만 꼭 다른 방법이있을 수. 에`;

using ::close; 
close(mHandle); 
+0

고마워요! 나는이 표기법을 전에 본 적이 있지만 결코 지금까지 의미했던 것을 생각하기 위해 멈추지 않았다. –