검색결과 리스트
글
영역 결정 연산자(Scope Resolution Operator, ::)
C/C++
2013. 5. 28. 20:17
C언어에서는 지역변수가 전역변수 보다 우선 순위를 갖는다. 이 지역변수의 사용영역(Scope) 밖에서만 전역변수에 접근을 할 수 있다.
하지만, C++에서는 같은 변수명을 갖는 지역변수의 사용영역 안에서도 영역 결정 연산자 ::를 붙여 전역변수에 접근을 가능하게 하고 있다.
int var = 100;
int main()
{
int var = 200;
}
cout << ::var << endl;
실행결과
100
MFC 프로그래밍 팁
영역 결정 연산자는 함수명 앞에 사용될 수 있다. 클래스의 멤버함수를 사용할 때 클래스명 다음에 영역 결정 연산자가 사용될 때는 해당 클래스에 속해 있는 함수임을 나타낸다.
CWnd::MessageBox(_T("Hello~"));
위 코드는 MessageBox 함수가 CWnd 클래스에 속해 있는 멤버함수라는 의미가 된다.
그러나 같은 이름으로 된 전역함수인 경우에는 함수명 앞에 그냥 영역 결정 연산자를 붙인다.
::myFunction( ~ );
반응형
'C/C++' 카테고리의 다른 글
유용한 매크로 및 함수(콘솔) (0) | 2013.07.04 |
---|---|
private, public, protected 공부 (0) | 2013.05.28 |
[C/C++]도형 출력(삼각형,피라미드,다이아몬드) (0) | 2013.02.20 |