Как я могу по-разному специализировать typedef и его неявный тип?

У меня есть что-то вроде этого:

typedef int AnotherType;
template <typename T> Func( T Value );

// And I want to specialize these two cases separately:

template <> bool Func<int>( int Value ) {...}
template <> bool Func<AnotherType>( AnotherType Value ) {...}

Мне действительно не нужно специализироваться для int, что я действительно необходимо выполнить другую функцию для AnotherType. И я не могу изменить определение AnotherType или базовой функции.

Перегрузка не помогает ни из-за SFINAE.

6
задан Frigg 28 January 2011 в 20:46
поделиться