void ?



  • eine frage : was sollte ich machen, damit eine subfunktion meines c++ programmes auch mit :
    " void ClToken::druckeToken(void) "

    richtig funktioniert, statt von :

    " void ClToken::druckeToken(
    int ebene) "

    wobei die variable "ebene" INT ist und den wert 1 (eins) vom main programm bekommt.

    die funktion wurde als : "void druckeToken(int ebene);" bei der definition der klasse deklariert.

    also : ebene muss statt mit INT auch mit void funktionieren !! ?

    wie ??

    vielen dank !!



  • Du sprichst in Rätseln

    wenn du eine Function mit foo(int bla) deklarierst
    erwartet diese einen int wert als parameter.
    deklarierst du sie mit foo(void) erwartet sie keine
    parameter.

    Wenn du willst das es auch mit void funktionierst
    musst du die Funktion eben überladen, was wenn du
    den Quellcode zur Klasse hast kein Problem sein sollte.
    Am besten definierst du dann für die Funktion
    einen default-Wert wenn das sinnvoll ist.



  • vielleicht mit nem deaultwert:

    void ClToken::druckeToken(int ebene=1)
    

    wenn du nun

    C1Token.drucketoken();
    

    schreibst wird einfach als wert 1 angenommen.

    Suchst du sowas?



  • Storm.Xapek.de schrieb:

    Wenn du willst das es auch mit void funktionierst
    musst du die Funktion eben überladen, was wenn du
    den Quellcode zur Klasse hast kein Problem sein sollte.

    Wenn man eine andere Funktion mit anderen Parametern macht, dann hat das nichts mit überladen zu tun.



  • begin of void schrieb:

    Storm.Xapek.de schrieb:

    Wenn du willst das es auch mit void funktionierst
    musst du die Funktion eben überladen, was wenn du
    den Quellcode zur Klasse hast kein Problem sein sollte.

    Wenn man eine andere Funktion mit anderen Parametern macht, dann hat das nichts mit überladen zu tun.

    Hab auch nie behauptet das er das machen soll.
    Ich hab gesagt er soll die Funktion überladen.
    Also die gleiche Funktion (gleicher name) mit
    unterschiedlichen Parametern

    zB.
    class Window
    {
    void SetData();
    void SetData(char*);
    void SetData(char*,int);
    ....
    };
    ~(Quelle http://www.cpp-tutor.de/cpp/le12/le12_01.htm)~


Anmelden zum Antworten