Eine Methode mehrere Parameter

  • Hallo ich brauche eine große gleiche Methode mit unterschiedlichen Parametern. Einmal mit 3 und einmal mit 4 Parametern. Die eine soll als 4ten Parameter immer eine 2 einsetzen und sonnst mit einem anderen Wert arbeiten.
    Geht das ohne die Methode komplett 2 mal zu schreiben?

  • Java
    public void doSomthing(int x , int y , int z) {
    ...
    }
    
    
    public void doSomthing(int x , int y) {
      doSomthing(x , y , 2);
    }

    Was du bräuchtest wären die Funktionsprototypen aus C++ mit Default Werten.

    Kann Spuren von persönlicher Meinung, Sarkasmus und Lakritz enthalten. Einzelne Wörter nicht für den Verzehr geeignet. Ungelesen mindestens haltbar bis: suche bei Google

  • Der Compiler von C++ verwöhnt seine Programmierer nicht so sehr wie der von Java.


    Rufe ich in einer Funktion (in Java Methode genannt) eine andere Funktion auf, die weiter unten in der Datei erst deklariert wurde, kennt der Compiler diese nicht und schmeißt einen Fehler.


    Aus diesem Grund kann man in C++ am Anfang der Datei sogenannte Funktionsprototypen erstellen. So weiß der Compiler zur Zeit des Aufrufs zwar noch nicht was die Funktion macht, ihm ist aber bewusst, dass eine solche Funktion noch kommt.


    Ein Prototyp sieht aus wie eine abstrakte Methode in Java:

    C
    void doSomthing(int, int, int);
    Java
    public abstract void doSomthing( int x, int y, int z);


    Jetzt kann dieser Prototyp in C++ mit Default Werten ausgestattet werden:

    C
    void doSomthing( int, int, int=2);


    Wird die Funktion nun mit 3 Parametern aufgerufen, werden diese auch alle übernommen. Wird die Funktion mit nur 2 Parametern aufgerufen wird für den 3ten automatisch eine 2 eingesetzt.


    Man kann auch mehrere Default Parameter in einer Funktion deklarieren aber da gibt es noch etwas mehr zu beachten.

    Kann Spuren von persönlicher Meinung, Sarkasmus und Lakritz enthalten. Einzelne Wörter nicht für den Verzehr geeignet. Ungelesen mindestens haltbar bis: suche bei Google

  • Sorry,
    mein Beispiel war mit 2 und 3 anstelle mit 3 und 4 Parametern.
    Funktioniert aber genauso.

    Kann Spuren von persönlicher Meinung, Sarkasmus und Lakritz enthalten. Einzelne Wörter nicht für den Verzehr geeignet. Ungelesen mindestens haltbar bis: suche bei Google

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!