Implicit template argument deduction for classes
Hi all,
I just discovered that class template arguements are never implicitly deduced from their constructor arguements. Am I correct in thinking that the following code won't work (as I don't have access to a compiler)?
Code:
template<typename T> class basic_broken { /* ... */ };
template<typename T>
class broken { // bridge class
basic_broken<T>* broken_impl;
public:
broken( T* t )
: broken_impl(t)
{}
};
void f()
{
int s;
broken(&s); // Error: can't deduce template type of class broken?
}