So in etwa.
Man kann es sich fast wie die Makros aus anderen Programmiersprachen vorstellen.
Der "Inhalt" dieser Funktion/Prozedur wird an der "Aufrufstelle" eingefügt, an statt einem CALL/Aufruf zu dieser Funktion.
> Es entfällt also ein Sprung, was bei "kurzen" Funktionen den Programmablauf verbessern kann.
(dass dieses "Einfügen" vom Compiler oft/meistens nicht wirklich optimal vorgenommen wird und bei Assembler-Funktionen praktisch garnicht gut geschehen kann, das ist eine andere Angelegenheit)
Und hier sagt der Compiler einfach nur
Zitat:
ich habe an der Stelle keinen Zugriff auf alles, was diese Funktion benötigt und ignoriere daher das INLINE.
PS: Was sich garnicht auflösen lässt, wäre z.B. ein Zugriff auf eine Funktion, globale Variable oder einen Typ, welcher in der Implementation der anderen
Unit deklariert wurde.
> Hier geht nur INLINE weglassen oder diesen Teil ins Interface verschieben.