die folgende Funktion Betrachtet:sizeof variadische Vorlage (Summe aus sizeof aller Elemente)
template<typename... List>
inline unsigned int myFunction(const List&... list)
{
return /* SOMETHING */;
}
Was ist die einfachste Sache, statt /* SOMETHING */
in Ordnung zu bringen, die Summe von sizeof
alle Argumente zurück?
Zum Beispiel myFunction(int, char, double) = 4+1+8 = 13
Smart (+1) - mit 'Inline' wird noch schlauer. – PiotrNycz
@PiotrNycz: 'Inline' als eine Optimierung Sache, ist nur ein Hinweis. Nichts mehr. Persönlich schätze ich Code-Klarheit weit mehr als das Hinting, und dann sollte 'inline' besser für seinen einen garantierten Effekt reserviert werden, nämlich seinen ODR-Effekt. –
@PiotrNycz: Ja, wenn Sie die Nicht-Template-Überladung in einer Header-Datei definieren müssen, dann muss sie "inline" sein. Das ist für die Frage allerdings ziemlich irrelevant. –