void, parameter automatisch auf false setzen



  • Hallo,

    mein problem ist folgendes:

    Ich habe ein void:

    void angle_drive(int angle,int speed, bool brake)
    {
    ...
    }
    

    nun wird "brake" äußerst selten verwendet, deshalb würde ich es gerne so machen,
    dass wenn man die void so aufruft;
    angle_drive(20,255);
    brake auf false gesetzt wird.

    Ist das möglich?



  • Gast889 schrieb:

    Ich habe ein void:

    Du hast eine Funktion die void zurückgibt.

    Gast889 schrieb:

    Ist das möglich?

    Ja:

    void angle_drive(int angle,int speed, bool brake = true/*Standard-Wert*/)
    {
    }
    

    Somit:

    angle_drive(90, 30); //brake ist true
    angle_drive(90, 30, true); //brake ist true
    angle_drive(90, 30, false); //brake ist false
    

    Achtung: Bei der Definition oder der Deklaration!



  • Bei der Deklaration:

    void angle_drive(int angle,int speed, bool brake = false);
    


  • EOutOfResources schrieb:

    Achtung: Bei der Definition oder der Deklaration!

    Nein, es muss immer bei der Deklaration gemacht werden. Bei der Definition ist nur erlaubt, wenn diese auch zugleich die Deklaration ist (es also keine alleinstehende Deklaration gibt).


Anmelden zum Antworten