KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
Sometimes it works sometimes not: template <class T> void f(T t) {} template <class T> class MyClass { public: MyClass(T t) {} }; void test () { f<int>(5); MyClass<int> mc(5); f(5); MyClass mc(5); // this doesn't work } Is there a way to hack around the example above? I.e. force the compiler to infer the template parameter from constructor parameter. Will this be fixed in the future, or is there a good reason not to? What is the general rule when compiler can infer template parameter?
Tags (comma-separated)
Save Edits
Cancel