Variable Argumentlisten mit Boost?

8

Ich wollte eine Funktion mit einer variablen Argumentliste schreiben. Ich möchte meine Möglichkeiten erkunden. Ich bin mir ziemlich sicher, dass ich über eine Boost-Template-Klasse gekommen bin, die für diesen Zweck entwickelt wurde, aber ich kann mir den Namen nicht vorstellen. Kann mir das jemand sagen? oder habe ich das geträumt? Danke

    
aukm 18.09.2010, 23:58
quelle

1 Antwort

7

Wenn Sie nur eine variable Anzahl von Argumenten des gleichen Typs akzeptieren müssen, ist es üblich, einen Container zu verwenden. Die Erstellung des Containers kann jedoch mithilfe von Boost.Assign vereinfacht werden:

%Vor%

Alternativ können Sie sich auch für eine Überladung des Operators entscheiden (z. B. von operator() oder operator<< ), ähnlich wie bei den Standard-Bibliothekstreams:

%Vor%

Wenn Sie wirklich eine typsichere Variadic-Funktion bereitstellen möchten (ohne C ++ 0x-Funktionen zu verwenden), Boost.Preprocessor kann helfen. Ein generisches Beispiel:

%Vor%     
Georg Fritzsche 19.09.2010, 02:05
quelle

Tags und Links