Default parameter template vs variadic template : what is the last template parameter? <p>I'm a little confused because both a default parameter template and a variadic template parameter have to be the last parameter of a template. So what is the good official syntax for my function ?</p> <pre><code>template&lt;typename T, class T2 = double, unsigned int... TDIM&gt; myFunction(/* SOMETHING */) </code></pre> <p>or</p> <pre><code>template&lt;typename T, unsigned int... TDIM, class T2 = double&gt; myFunction(/* SOMETHING */) </code></pre>