다음을 통해 공유


용도별 특성

이 항목에서는 적용되는 C++ 언어 요소에 따라 특성을 나열합니다.

특성의 범위에 없는 요소 앞에 특성이 있으면 특성 블록이 주석으로 처리됩니다.

attribute 설명
모듈 특성 모듈 특성에 적용됩니다.
인터페이스 특성 __interface C++ 키워드에 적용됩니다.
클래스 특성 C++ 키워드에 적용됩니다.
메서드 특성 클래스, coclass 또는 인터페이스의 메서드에 적용됩니다.
매개 변수 특성 클래스 또는 인터페이스에서 메서드의 매개 변수에 적용됩니다.
데이터 멤버 특성 클래스, coclass 또는 인터페이스의 데이터 멤버에 적용됩니다.
Typedef, Enum, Union 및 Struct 특성 C++ 키워드에 적용됩니다.
배열 특성 배열 또는 SAFEARRAYs에 적용됩니다.
독립 실행형 특성 코드 줄처럼 작동하지만 C++ 키워드에서는 작동하지 않습니다. 독립 실행형 특성 문은 줄 끝에 세미콜론이 필요합니다.
사용자 지정 특성 사용자가 메타데이터를 확장할 수 있도록 허용합니다.

모듈 특성

다음 특성은 모듈 특성에만 적용할 수 있습니다.

attribute 설명
helpstringdll 문서 문자열 조회(지역화)를 수행하는 데 사용할 DLL의 이름을 지정합니다.

인터페이스 특성

다음 특성은 인터페이스(또는 __interface) C++ 키워드에 적용됩니다.

attribute 설명
async_uuid MIDL 컴파일러가 COM 인터페이스의 동기 버전과 비동기 버전을 모두 정의하도록 지시하는 UUID를 지정합니다.
custom 고유한 특성을 정의할 수 있습니다.
dispinterface .Idl 파일의 인터페이스를 디스패치 인터페이스로 배치합니다.
dual .idl 파일에 인터페이스를 이중 인터페이스로 배치합니다.
export 데이터 구조가 .idl 파일에 배치되도록 합니다.
helpcontext 사용자가 도움말 파일에서 이 요소에 대한 정보를 볼 수 있도록 하는 컨텍스트 ID를 지정합니다.
helpfile 형식 라이브러리에 대한 도움말 파일의 이름을 설정합니다.
helpstring 적용되는 요소를 설명하는 데 사용되는 문자열을 지정합니다.
helpstringcontext .hlp 또는 .chm 파일에서 도움말 항목의 ID를 지정합니다.
helpstringdll 문서 문자열 조회(지역화)를 수행하는 데 사용할 DLL의 이름을 지정합니다.
hidden 항목이 존재하지만 사용자 지향 브라우저에 표시해서는 안 됨을 나타냅니다.
library_block .idl 파일의 라이브러리 블록 내에 구문을 배치합니다.
local 인터페이스 헤더에서 사용될 때 MIDL 컴파일러를 헤더 생성기로 사용할 수 있습니다. 개별 함수에서 사용되는 경우 스텁이 생성되지 않는 로컬 프로시저를 지정합니다.
nonextensible 구현에 IDispatch 인터페이스 설명에 나열된 속성 및 메서드만 포함하며 런타임에 추가 멤버로 확장할 수 없게 지정합니다. 이 특성은 이중 인터페이스에서만 유효합니다.
odl 인터페이스를 ODL(개체 설명 언어) 인터페이스로 식별합니다.
object 사용자 지정 인터페이스를 식별합니다.
oleautomation 인터페이스가 Automation과 호환된다는 것을 나타냅니다.
pointer_default 매개 변수 목록에 표시되는 최상위 포인터를 제외한 모든 포인터에 대한 기본 포인터 특성을 지정합니다.
ptr 포인터를 전체 포인터로 지정합니다.
restricted 임의로 호출할 수 없는 라이브러리의 멤버를 지정합니다.
uuid 라이브러리에 대한 고유 ID를 제공합니다.

인터페이스를 정의하려면 다음 규칙을 준수해야 합니다.

  • 기본 호출 규칙은 __stdcall.

  • GUID를 제공하지 않으면 GUID가 제공됩니다.

  • 오버로드된 메서드는 허용되지 않습니다.

uuid 특성을 지정하지 않고 다른 특성 프로젝트에서 동일한 인터페이스 이름을 사용하는 경우 동일한 GUID가 생성됩니다.

참고 항목

COM 및 .NET에 대한 C++ 특성
그룹별 특성
특성 사전순 참조