Ist es möglich, eine Klassenmethode für einzelne Enum-Werte zu spezialisieren? Insbesondere habe ich eine Enum und eine Klasse wie folgt:Template-Spezialisierung für Enum-Werte
#include <iostream>
#include <stdio.h>
using namespace std;
enum class Animal { dog, cat, bird };
class Sound
{
public:
static void getSound (const Animal& arg)
{
switch (arg)
{
case Animal::dog:
// dog specific processing
break;
case Animal::cat:
// cat specific processing
break;
case Animal::bird:
// bird specific processing
break;
default:
return;
}
}
};
Ich möchte getSound Funktion spezialisiert für jede der ENUM-Werte, um loszuwerden des Schaltergehäuses. Ist eine solche Template-Spezialisierung möglich?
Danke S.M. für deine Antwort. Dies löst meine Abfrage. Akzeptieren Sie es als Antwort. – vchandra