マクロ__FILE__
が 1 台のコンピューターにパスが含まれるファイルの完全な名前に展開され、ファイルの名前のみ (パスが指定されていない) に展開されるのはなぜですか? 両方のコンピューターで、MSVC-10.0 と Win7 を使用しています。
もちろん、標準はそれについて何も保証しません:
ISO/IEC 14882:2011
16.8 定義済みマクロ名 [cpp.predefined]
__FILE__
現在のソース ファイルの推定名 (文字列リテラル)。
MSDN は、このマクロについて次のように述べています。
http://msdn.microsoft.com/en-us/library/b0084kay%28v=vs.71%29.aspx
__FILE__
現在のソース ファイルの名前。
__FILE__
二重引用符で囲まれた文字列に展開されます。
両方のコンピューターでキー /FC を使用しません。