2014-02-11 12 views

Antwort

10

VS2012 unterstützt variadic Vorlagen nicht vollständig. Siehe auch diesen Blogpost: http://blogs.msdn.com/b/vcblog/archive/2011/09/12/10209291.aspx

Sie können die maximale Anzahl der Argumente so hoch wie 10 festlegen, indem Sie dieses Makro _VARIADIC_MAX definieren.

Also tun Sie einfach etwas wie #define _VARIADIC_MAX 10.

Die Standardwerte sind 5, 2 Standardargument + 5 variable für std :: thread. Insgesamt können Sie bis zu 12 Parameter übergeben, indem Sie den obigen Wert einstellen.

+0

Gibt es einen Nachteil, wenn ich den Wert erhöhen? Ist das in VS2013 behoben? – Luka

+0

@Luka: Kompilierzeit ist erhöht. Ich stelle mir vor, dass der Compiler einige Tricks mit einigen vordefinierten Makros verwendet, um Dinge zum Laufen zu bringen. VS2013 unterstützt vollständig variadische Vorlagen. – Robin

+0

Ich sehe, vielen Dank! – Luka

Verwandte Themen