<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
If you don't mind, could you see if your solutions work on the following code:<br>
<br>
<a href="http://dpaste.dzfl.pl/64025e0a" target="_blank">http://dpaste.dzfl.pl/64025e0a</a><br><br></blockquote><div><br></div><div>What you're doing here is a bit different (AFAICT). _A is a template, not a 'real' class. So, it has no classinfo. The only real type here is the template instantiation you call A.</div>
<div><br></div><div>Honestly, I have trouble reading your code, even though mine look much like yours. I really do not get what you're trying to do. Maybe I'm too tired.</div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

This is possibly because I want to design the code to work with a variable number of arguments(hence my asking for the number of arguments of a templated class in the other post).<br>
<br>
e.g., I want<br>
<br>
class A(..., bool _NestLevel = true) { }<br>
<br>
then<br>
<br>
A(...) a; to create an object. (note the _NestLevel is "hidden")<br>
<br>
If A has only one template argument, _NestLevel, then I want this to reduce to<br>
<br>
A a;<br>
<br>
Thanks.<br></blockquote><div><br></div><div>You should try to use templated factory functions:</div><div><br></div><div>auto makeA(..., bool _NestLevel = true)</div><div>{</div><div>    return new A!(..., _NestLevel)();</div>
<div>} </div></div><br>