Ich würde generell Exceptions nutzen. Dies entspricht zum einem den
OOP Konzept und zum anderen erspart man sich die Abfrage des Fehlercodes. hat man mehrere solcher Funktionen kann es durch aus ziemlich unübersichtlich werden mit den verschachtelten if-Abfragen.
Mit Exceptions kan nman gerade runter programmieren und muss sich nicht um die Fehlerbehandlung kümmern.