C++ 속 꿀팁들 : 범위 지정 연산자 ::

Bogoomi·2022년 6월 7일
0

C++

목록 보기
4/8

범위 지정 연산자

컴퓨터 언어 이론에서 범위 규칙(scope rule)이란 동일한 이름(identifier)의 변수나 함수가 여러 곳에 선언되어 있을 때, 가장 가까운 범위에 선언된 이름을 사용하는 규칙이다.
클래스나 블록 내에 선언된 이름과 동일한 이름이 전역 범위(global area)에 선언되면, 전역 범위에 선언된 이름은 클래스나 블록으로부터 숨겨지게(hidden) 된다.
이때 다음과 같이 범위 지정 연산자(::)를 사용하면 전역 범위의 이름에 접근할 수 있다!

아래 코드는 범위 지정 연산자(::) 사용법이다.

#include <iostream>
using namespace std;

int n = 11;

int main()
{
	int n = 3;
    cout << ::n << endl;
    cout << n << endl;
}
11
3

함수도 가능하다!

#include <iostream>
using namespace std;

void sendMessage(const char* msg) { cout << msg << endl; }

class Window
{
public:
	void sendMessage(const char* msg) { cout << msg << endl; }
    void run() 
    {
    	::sendMessage("Global Hello");	// 전역 함수 호출
        sendMessage("Local Hello");		// 멤버 함수 호출
    }
}

int main()
{
	Window window;
    window.run();
}
Global Hello
Local Hello
profile
개에에에바알

0개의 댓글