Spartaner117
Lt. Commander
- Registriert
- Feb. 2005
- Beiträge
- 1.299
Hi,
im Moment sitz ich an einer Klassenfunktion, die mir aus einer Map zu einem bestimmten Key den passenden Value liefert. Die Values sind alle als string gespeichert, aber es wäre praktisch sie korrekt auszugeben, also bspw. den String "false" als ein bool false.
Das ist soweit kein Problem, nur:
Um einen variablen Rückgabewert zu haben, hab ich mich für eine Template-Klasse entschlossen. Die zickt aber mit folgender Meldung:
Der Code:
Vielen Dank in voraus.
im Moment sitz ich an einer Klassenfunktion, die mir aus einer Map zu einem bestimmten Key den passenden Value liefert. Die Values sind alle als string gespeichert, aber es wäre praktisch sie korrekt auszugeben, also bspw. den String "false" als ein bool false.
Das ist soweit kein Problem, nur:
Um einen variablen Rückgabewert zu haben, hab ich mich für eine Template-Klasse entschlossen. Die zickt aber mit folgender Meldung:
Ich hab noch nicht so viel mit Templates gemacht, und hab nach knapp einer Stunde Grübeln wirklich keine Idee woran es liegen könnte.template-Argument für "T" konnte nicht hergeleitet werden.
Der Code:
Code:
template<class T> T CConfig::ShowConfig(string key, char mode)
{
T retval;
map<string, string>::iterator i;
i = ConfigValues.find(key);
if(i != ConfigValues.end())
{
switch(mode)
{
case 'b':
{
if(i->second == "true")
retval = true;
else
retval = false;
}break;
case 's':
{
retval = i->second;
}break;
case 'i':
{
retval = atoi((i->second).c_str())
}break;
}
}
else
retval = "key_not_found";
return retval;
}
Vielen Dank in voraus.