У меня есть что-то вроде этого:
template<class Key,
class Value,
class Compare_p = Compare<ByKey>,
template<class,class> class Insert_p = NoOverride,
template<class> class FailureSignal_p = ThrowOnFailure,
class AllocFactor_p = AllocFactorScientific<>,
class Alloc = Allocator<FailureSignal_p>
>
class Map : private Map_Base<Implementation> //Implementation is a Link with identical
//params to Map
{
public:
//I've tried to use typedef here but it's too late
typedef LinkImplementation<Pair<Key,Value>,Compare_p,Insert_p,FailureSignal_p,AllocFactor_p,Alloc> Implementation;
};
Итак, большой вопрос: есть ли способ сократить это объявление (LinkImplementation <>)?