3.1 Function-Overloading
Function Overloading ist grundsätzlich das Verwenden von gleichen Funktionen mit verschiedenen Parametern bzw. mit einer unterschiedlichen Anzahl von Parametern.
Weiters ist zu beachten, daß zwei Funktionen mit gleichem Namen und gleicher Parameterliste aber unterschiedlichen Rückgabewerten nicht überladen werden können.
Außerdem gibt es Situationen, in denen der Compiler nicht weiß, welche von zwei bestehenden Funktionen verwendet werden soll. Dies kann folgende Gründe haben:
1. Der Compiler führt eine automatische Typkonvertierung durch (z.B. von char auf double)
2. Bei Verwendung von Default-Argumenten
3. Zwei Funktionen sind gleich bis auf die Art der Parameterübergabe (Call by Reference bzw. Call by Value)
Beispiel:
ad 1)
float myfunc(float i);
double myfunc(double i);
main()
{
cout |