Chcę, aby ten specjalistyczny bez zmiany głównego. Czy można specjalizować coś na podstawie swojej klasy bazowej? Mam nadzieję.Specjalizacja szablonów w oparciu o dziedziczenie klasy
-edit-
będę miał kilka klas, które dziedziczą z SomeTag. Nie chcę pisać tej samej specjalizacji dla każdego z nich.
class SomeTag {};
class InheritSomeTag : public SomeTag {};
template <class T, class Tag=T>
struct MyClass
{
};
template <class T>
struct MyClass<T, SomeTag>
{
typedef int isSpecialized;
};
int main()
{
MyClass<SomeTag>::isSpecialized test1; //ok
MyClass<InheritSomeTag>::isSpecialized test2; //how do i make this specialized w/o changing main()
return 0;
}
Umysł boggles! Domyślam się, że nieokreśloną funkcją 'No' jest ..... – John
Piękna. Mam tylko jedno, naprawdę głupie pytanie - czy istnieje powód, że "klasa Tak" jest zadeklarowana jako "Nie nie [3]" zamiast, powiedzmy, "Nie nie [2]"? Przypuszczam, że to też zadziała, ale może brakuje mi czegoś ważnego ... –