Brock Peabody wrote: > That's a cool idea. It's a lot prettier than using the preprocessor.
Thanks, Brock. > Does anyone know whether or not a language solution is being > considered > for this or variable class template arguments? It would be valueable for expressions only, not declarator lists. But in general those infinite parameters function instanciations happens mostly for function overloading. [...] >> int main() >> { >> foo((infinite::begin, true, (char *) "adasd", 12367, 127.2)); >> } The previous syntax or the following by using a px() helper which would generate another type: template <typename T> struct p_t { T const & t; ... }; template <typename T> p_t<T> px(T const & p) { return p_t<T>(p); } template <...> infinite< V, infinite<T, U> > operator , (infinite<T, U> const & u, p_t<V> const & p) { return infinite< V, infinite<T, U> >(u, p.t); } ... int main() { foo((px(true), px((char *) "adasd"), px(12367), px(127.2))); } My 0,03$ Philippe _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost