IDL의 정의에 대해서...

htna의 이미지

음.
여기에 IDL에 대해서 의견을 물어봐두 될런지 모르겠네요...
IDL을 정의하는데 object-id 를 정의해서 method/property의 파라메터로 사용하려 합니다.
즉...

typedef xxx object_id;
interface ITemp {
    HRESULT Method(object_id id);

머 이런 코드를 사용하고 싶다 이거죠..
저기서 object-id를 단순히 pointer를 unsigned/signed int로 캐스팅 해서 적용하려 합니다.
단 개발환경이 64bit processor로 변경될 수 있어서. unsigned/signed int의 bit가 32가 될 수도 있고 64가 될 수도 있습니다.

이때 typedef 부분을....

#ifdef _64BITMACHINE_
typedef __int64 object_id;
#else /*_64BITMACHINE_*/
typedef __int32 object_id;
#endif /*_64BITMACHINE_*/

하는게 낳을지..
typedef __int64 object_id
로 통일하는게 낳을지...
다른분들의 의견을 듣고 싶습니다...

PS:
너무 간단한 질문일까요?
저는 후자가 더 낳다고 생각이 듭니다. 다른분들은 어떻게 생각하시는지...

PS2:
이젠 로그인을 해야만 글을 쓸 수가 있네요..
좋은방법이라고 생각 되어집니다.
다만, 자신을 보이고 싶지 않을때에는 어떻게 글을 남겨야 할지...