05.11.2013 Aufrufe

Vergleich von Delphi und Visual C++ - Inhalt

Vergleich von Delphi und Visual C++ - Inhalt

Vergleich von Delphi und Visual C++ - Inhalt

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

<strong>Vergleich</strong> <strong>von</strong> <strong>Delphi</strong> <strong>und</strong> <strong>Visual</strong> <strong>C++</strong> - Kapitel 2B<br />

void __stdcall Tausch(int& i, int& j)<br />

{<br />

...<br />

}<br />

procedure Tausch(var i, j: Integer); stdcall;<br />

begin<br />

...<br />

end;<br />

Wenn keine expliziten Angaben bei der Funktionsdeklaration erfolgen, wird in <strong>Visual</strong> <strong>C++</strong> <strong>und</strong> Object Pascal die Standard-Aufrufkonvention benutzt.<br />

Standard-Aufrufkonvention ist in:<br />

<strong>Visual</strong> <strong>C++</strong>:<br />

Object Pascal:<br />

Win32 - API:<br />

__cdecl<br />

register<br />

stdcall<br />

Funktionen können in <strong>C++</strong> mit dem Vorsatz "Inline" versehen werden.<br />

inline int Quadrat(int m)<br />

{<br />

return m * m;<br />

}<br />

An jeder Stelle im Programm, an dem der Compiler Quadrat vorfindet, ersetzt dieser den Funktionsaufruf durch den Anweisungsteil des<br />

Funktionsrumpfes. Es liegt somit kein Funktionsaufruf mehr vor. Die Inline-Deklaration <strong>von</strong> Funktionen ist nur sinnvoll, wenn der Funktionsrumpf sehr<br />

klein ist.<br />

Um den Geschwindigkeitsvorteil <strong>von</strong> Inline-Funktionen gegenüber normalen Funktionen in <strong>Visual</strong> <strong>C++</strong> <strong>und</strong> Object Pascal einschätzen zu können,<br />

wurden eigene Messungen angestellt. Die oben angegebene Funktion Quadrat wurde dazu 90 Millionen mal aufgerufen <strong>und</strong> die benötigten Zeiten<br />

gemessen.<br />

http://ourworld.compuserve.com/homepages/praxisservice/kapit2b.htm (44 of 52) [19.05.2000 15:30:09]

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!