Da Typen eindeutig sind, hilft dir das eh nix.
Selbst wenn du TPoint3D neu definierst, weil du keine Lust hattest die richtige
Unit einzubinden,
dann kannst du es dennoch vergessen z.B. eine "externe" Prozedur, aus einer anderen
Unit, aufzurufen, welche aber mit dem eigentlichen Typen deklariert wurde.
Nur weil Typen gleich aussehn, sind sie dennoch nocht kompatibel.
Delphi-Quellcode:
{$IF not Declared(TPoint3D)}
type TPoint3D = record x,y,z : Integer end;
{$IFEND} // ich hoff es war nicht {$ENDIF}
{$IF Defined(WIN32)}
entspricht dem
{$IFDEF WIN32}
, nur daß man da mehr Möglichkeiten hat, wie z.B.
{$IF not Defined(WIN32) and not Defined(UNIX)}
.