C & C++
COM 특징
자유프로그램
2017. 1. 2. 00:46
반응형
COM 특징
참고 : Visual C++ 6 완벽가이드 2nd Edition, 김용성 저, p849 ~
COM 특징
- COM 은 인터페이스 표준
- 언어중립적인 표준
- 바이너리 표준 ; 소스코드 레벨 표준이 아니다.
COM 인터페이스
- 바이너리 레벨에서의 표준이다.
- COM 인터페이스는 C++ 가상함수 테이블이 컴파일 되었을때 만들어지는 바이너리 코드와 모양이 같다.
- 즉, COM 인터페이스는 가상함수 테이블이라고 생각할수있다.
- 실제로 C++ 에서는 순수가상함수만을 포함하는 구조체를 이용하여 인터페이스를 만든다.
IUnknown 인터페이스
- 모든 COM 인터페이스는 IUnknown 이라는 인터페이스에서 상속을 받아 만들어져야함.
- IUnknown 인터페이스는 다음 3가지 메소드를 가진 인터페이스.
* AddRef
* Release
* QueryInterface
CoClass (Component Object Class)
- CoClass 는 하나 이상의 인터페이스와 그 인터페이스를 실제 구현하는 코드를 말한다.
- CoClass 는 단독으로 또는 여러 개가 모여서 DLL 이나 EXE 파일 형태로 저장된다.
- C++ 클래스와는 다른것이니 구별하라!
- CoClass는 C++의 클래스처럼 오브젝트 단위로 소프트웨어 콤포넌트를 구현하는 기본단위.
COM 오브젝트
- COM 오브젝트는 CoClass가 인스턴스화 되어 메모리에 생성된 것을 말한다.
반응형