在XE5中,所有条件编译,例如
{$IFDEF MSWINDOWS}
被替换为
{$IF defined(MSWINDOWS)}
例如,XE4中的System.Diagnostics.pas具有
...
implementation
{$IFDEF MSWINDOWS}
uses Winapi.Windows;
{$ENDIF}
{$IFDEF MACOS}
uses Macapi.Mach;
{$ENDIF}
{ TStopwatch }
...
现在在XE5中看起来像:
...
implementation
{$IF defined(MSWINDOWS)}
uses Winapi.Windows;
{$ELSEIF defined(MACOS)}
uses Macapi.Mach;
{$ELSEIF defined(POSIX)}
uses Posix.Time;
{$ENDIF}
{ TStopwatch }
...
还有什么特殊的原因我也应该迁移类似的调用吗?
根据Delphi文档: