これは、MFCのCMapクラスのデフォルトのHashKey関数です。
AFX_INLINE UINT AFXAPI HashKey(ARG_KEY key)
{
// default identity hash - works for most primitive values
return ((UINT)(void*)(DWORD)key) >> 4;
}
私の質問は、なぜ型キャスト(DWORD)と(void *)が必要なのかということです。(DWORD)は、16ビットマシンの互換性と何らかの関係があるのではないかと思います。しかし、私はボイド*について混乱しています。