다음을 통해 공유


정적 저장소 클래스 지정자

정적 저장 클래스 지정자인 staticextern은 개체 및 함수에 적용될 수 있습니다. 다음 표에서는 static 및 extern 키워드를 사용할 수 있고 사용할 수 없는 경우를 보여 줍니다.

Static 및 extern 사용

구성

static

사용 여부

extern

사용 여부

블록 내 함수 선언

아니요

함수에 대한 형식 인수

아니요

아니요

블록에 있는 개체

블록 외부에 있는 개체

함수

클래스 멤버 함수

아니요

클래스 멤버 데이터

아니요

typedef 이름

아니요

아니요

외부 링크가 있는 클래스의 정적 멤버를 제외하고 static 키워드를 사용하여 지정된 이름에 내부 링크가 있습니다. 즉, 이름이 현재 변환 단위 외부에서 표시되지 않습니다. 이전에 내부 링크를 가지도록 정의되지 않은 경우 extern 키워드를 사용하여 지정된 이름에 외부 링크가 있습니다. 이름의 표시 유형에 대한 자세한 내용은 범위프로그램 및 링크를 참조하십시오.

참고

인라인으로 선언되고 클래스 멤버 함수가 아닌 함수에 static으로 선언된 함수와 동일한 링크 특성이 지정됩니다.

컴파일러에서 아직 선언이 검색되지 않은 클래스 이름이 extern 선언에서 사용될 수 있습니다. 이러한 선언과 함께 도입된 이름은 클래스 선언이 검색되어야 사용할 수 있습니다.

참고 항목

참조

저장소 클래스 지정자