B
MoritzBleibtreu schrieb:
Guten Abend,
ich lerne im Moment das Programmieren mit C++.
Kann mir jemand erklären, wie ich Fehler einer Funktion, welche kein int ist, abfange?
Ich bekomme die Fehlermeldung, dass ein Rückgabewert nicht mit dem Funktionstyp übereinstimmt.
Mit int funktioniert es so:
int ReturnCode = meineFunktion(meineVariable);
if (ReturnCode)
{
printf( "Fehler!" );
return ReturnCode;
}
Du benutzt in Deinem Beispiel eine von Dir selbst geschriebene Funktion.
Wenn es also um Funktionen geht, die Du selbst entwickelst, dann bestimmst Du ganz alleine, ob die überhaupt fehlerhaft sein kann, und wenn, dann auf welche Weise sie Ihre Fehler an einen Aufrufer zurückgibt.
Es hindert Dich ja niemand daran, die Funktion mit einem int als Rückgabewert zu definieren.
Sollte es um andere Funktionen gehen, also solche, die nicht von Dir geschrieben sind, musst Du recherchieren, ob diese überhaupt fehlerhaft sein können, und ob bzw. wie sie einen Fehler an den Aufrufer übermitteln würden.
Der schönste try/catch - Block nützt nicht viel, wenn die Funktion überhaupt keine Exception wirft.
Du solltest Dir als blutiger Anfänger da im Moment wahrscheinlich nicht ganz so viele Gedanken drüber machen.
Versuch zunächst mal, Deine eigenen Funktionen so zu schreiben, dass sie gar nicht fehlerhaft sein können, falls das nicht geht, sie nur mit Parametern aufzurufen, die keine Fehler auslösen.
Mit fortschreitendem Lernerfolg wirst Du dann irgendwann ganz von selbst auf Lösungen und Strategien stoßen, das geschilderte Problem zu lösen.