<br>AFAIK, VC7 does not fill in the default argument for templated types. <br>I remember a solution posted by Dave Abrahams in some(?) forum, wherein he used one of boost library to acheive this, but I don't remember the exact solution and library. <br>I used an extra level of indirection, but I can not assure you if this is anywhere near standard practices only the gurus can...<br>Here is what I did:<br>//////////////////////////////////////////////////////////////// <br>BOOST_MPL_HAS_XXX_TRAIT_DEF(ctype)<br>///// SomeFunc function///////////////<br>template <typename T, class Cont><br>typename Cont::ctype somefunc(T a, typename p_enable_if<has_ctype<Cont>, typename Cont::ctype > *p =0) { <br> Cont::ctype c;<br> c.push_back(a);<br> return c;<br>}<br><br>//////Container wrap<br>template <<br> typename _elem, <br> <br> template<<br> typename Elem,<br> typename Alloc=std::allocator<Elem> <br> > <br> class cont,<br> typename Alloc=std::allocator<_elem><br>><br>struct _container {<br> typedef cont<_elem,Alloc> ctype;<br>};<br><br>int _tmain(int argc, _TCHAR* argv[]) {<br> ...<br> std::vector<char> cd = somefoo<char, _container<char,std::vector> >('a');<br> ...<br>}<br><br><br><br><div><span class="gmail_quote">On 5/18/06, <b class="gmail_sendername">chun ping wang</b> <<a href="mailto:cablepuff@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"> cablepuff@gmail.com </a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div>the error is on "CONT<T> someFunc()"...<br><br> <div></div><div><span><span class="gmail_quote">On 5/18/06, <b class="gmail_sendername">Michael Rickert</b> <<a href="mailto:pandamojo@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"> pandamojo@gmail.com</a>> wrote:</span> </span></div><div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"></blockquote></div><div><span> <div>DevC++ uses GCC, and 4.0.0 seems to grok that, although I might be instantiating it differently (since you didn't post the line triggering the error).<br> </div><br></span></div><div>_______________________________________________ <br> Boost-users mailing list<br><a href="mailto:Boost-users@lists.boost.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">Boost-users@lists.boost.org</a><br><a href="http://lists.boost.org/mailman/listinfo.cgi/boost-users" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"> http://lists.boost.org/mailman/listinfo.cgi/boost-users</a><br><br></div><br> </div><br>_______________________________________________<br>Boost-users mailing list<br><a href="mailto:Boost-users@lists.boost.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">Boost-users@lists.boost.org </a> <br><a href="http://lists.boost.org/mailman/listinfo.cgi/boost-users" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://lists.boost.org/mailman/listinfo.cgi/boost-users</a><br><br></blockquote> </div><br><br clear="all"><br>-- <br>"Civilization is the limitless multiplication of unnecessary necessities." -- Mark Twain