Ausgangspunkt unserer Einführung in die generische Programmierung: Eine traditionelle, übermässig eingeschränkte Summen-Implementierung
Tutorial - Ausgangspunkt
Betrachten wir eine ganz einfache Funktion,
die alle Werte eines Arrays aufsummiert.
Wir nennen die Funktion sum0
,
weil wir später bessere (generischere) Versionen erzeugen wollen.
double sum0(double* a, int n) {
double res = 0;
for(int i = 0; i < n; ++i)
res += a[i];
return res;
}
Was gibt es jetzt an sum0
auszusetzen?
Wie kann man die Funktion verallgemeinern?
Nehmen Sie sich ein paar Minuten, um darüber nachzudenken.
© Frank-Peter Funke - Fotolia.com
Fertig? Schauen wir mal, ob unser erster Gedanke der gleiche war ...