Parameterliste unbekannter Länge



  • Hallo zusammen,
    ich suche nach einer Möglichkeit, die Parameterliste einer Funktion nicht explizit zu definieren, sondern frei zu lassen, wieviele Parameter und von welchem Typ diese sein sollen.

    Dass das geht, sieht man an der Funktion
    printf("%i, %i, %c, %i",1, 2, 'c', 4);

    Hier ist ja auch nicht von vornherein klar, wie die Parameterliste aussieht.

    Kann mir jemand helfen?

    Vielen Dank im Voraus
    JoKl



  • Hallo,

    geht so: http://www.pronix.de/pronix-629.html

    IIRC bietet auch boost was zu diesem Punkt, mir fällt nur grad auf die schnelle nicht ein, wie das Teil hieß 😞

    MfG

    GPC


  • Mod

    ellipsen sind ein gefährlicher und und C++ unnötiger mechanismus (ok, es ist für bestimmte meta-programming techniken nützlich). funktionsüberladung oder -verkettung ist eine bessere wahl. boost::format zeigt wie es geht. QT's QString benutzt eine ähnliche vorgehensweise.



  • Super!
    Vielen Dank für die schnelle Antwort. Das war genau das, was ich gesucht habe. Die Sicherheitsbedenken lass ich in dem Fall einmal ein wenig außen vor, weil es sich im Prinzip lediglich um eine Anzeigemethode handelt in die Typkonsistenz auch mal ohne große Komplikationen schief gehen darf.

    Schöne Grüße
    JoKl


Anmelden zum Antworten