Breymann. C++ Einführung und professionelle Programmierung

Breymann. C++ Einführung und professionelle Programmierung Breymann. C++ Einführung und professionelle Programmierung

vred.bioinf.uni.sb.de
von vred.bioinf.uni.sb.de Mehr von diesem Publisher
17.11.2014 Aufrufe

Auslagern des Vergleichs erspart die Änderung von quicksort(), wenn der Operator < anders definiert werden muss, z.B. Vergleich nach Absolutbetrag: // (#include für abs() nicht vergessen) int kleiner(const int& a, const int& b) { // Vergleich jetzt nach dem Absolutbetrag! } return abs(a) < abs(b); Spezialfälle von überladenen Funktionen werden nach den Templates eingefügt. Ein Template ist keine Funktionsdefinition im bisherigen Sinn! Die konkrete Definition wird erst bei Bedarf erzeugt. Breymann C++, c○ Hanser Verlag München Inhalt ◭◭ ◭ ◮ ◮◮ 140 zurück Ende

4.5 inline-Funktionen inline ist eine Empfehlung an den Compiler, einen Funktionsaufruf direkt durch den Funktionskörper zu ersetzen. Vorteil: Zeitersparnis Empfehlenswert nur für Funktionen mit kurzer Ausführungszeit. inline int quadrat(int x) { } return x*x; z = quadrat(100); wird dann ersetzt durch z = 100*100; inline-Funktionen sind in Header-Dateien (*.h) zu definieren, nicht in Implementationsdateien (*.cpp), um Linker-Fehler zu vermeiden. Breymann C++, c○ Hanser Verlag München Inhalt ◭◭ ◭ ◮ ◮◮ 141 zurück Ende

Auslagern des Vergleichs erspart die Änderung von quicksort(), wenn<br />

der Operator < anders definiert werden muss, z.B. Vergleich nach Absolutbetrag:<br />

// (#include für abs() nicht vergessen)<br />

int kleiner(const int& a, const int& b) {<br />

// Vergleich jetzt nach dem Absolutbetrag!<br />

}<br />

return abs(a) < abs(b);<br />

Spezialfälle von überladenen Funktionen werden nach den Templates<br />

eingefügt.<br />

Ein Template ist keine Funktionsdefinition im bisherigen<br />

Sinn! Die konkrete Definition wird erst bei Bedarf erzeugt.<br />

<strong>Breymann</strong> <strong>C++</strong>, c○ Hanser Verlag München<br />

Inhalt ◭◭ ◭ ◮ ◮◮ 140 zurück Ende

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!