I declare a templated class with all parameters having default arguments, for example:
template<typename TYPE = int>
class Foo {};
Then the following two are equivalent:
Foo<int> one;
Foo<> two;
However, I'm not allowed to just do:
Foo three;
Is it possible to achieve that with a typedef
to the same name but without the brackets, like this:
typedef Foo<> Foo;