次の状況を考慮してください。
MacFont.h
struct MacFont : Font
{
// ...
NSFont* font;
};
MacFont は MacFont.mm に実装されます
FontEngine.cpp:
#if defined(OS_MAC)
#include "MacFont.h"
#elif
// ...
#endif
//...
コンパイルするには、FontEngine.cpp の名前を FontEngine.mm に変更する必要がありますが、許可されていません。
ならどうしよう?