mam coś takiego:Jak mogę wyspecjalizować typedef i jego domyślny typ w inny sposób?
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) {...}
I naprawdę nie trzeba się specjalizować na int, co naprawdę potrzebne jest do wykonania różnych funkcji dla AnotherType. I nie mogę zmienić definicji Innego rodzaju ani funkcji podstawowej.
Przeciążenie nie pomaga z powodu SFINAE.
Nie mogę włączyć biblioteki zewnętrznej w tym momencie, ale myślę, że pomysł silnego Typedef jest dokładnie tym, o czym myślałem: klasą, która działa dokładnie tak, jak mój podstawowy typ. Chociaż Boost silny typedef wydaje się ograniczony, prawdopodobnie nie działałby, nawet gdybym mógł go uwzględnić. – Frigg
To jest tak blisko rozwiązania jak ja W moim przypadku okazało się, że jest to najmniej zła opcja. – Frigg