Función que devuelve un tipo desconocido.

class Test
{
public:

 SOMETHING DoIt(int a)
 {
  float FLOAT = 1.2;
  int INT = 2;
  char CHAR = 'a';

  switch(a)
  {
  case 1: return INT;
  case 2: return FLOAT;
  case 3: return CHAR;
  }
 }
};


int main(int argc, char* argv[])
{  
 Test obj;
 cout<<obj.DoIt(1);    
    return 0;
}

Ahora, usando el conocimiento de que a = 1 implica que necesito devolver un número entero, etc., ¿hay alguna manera de que Doit () pueda devolver una variable de tipo de datos variable?

Esencialmente, con lo que sustituyoALGUNA COSA ?

PD: Estoy tratando de encontrar una alternativa a devolver una estructura / unión que contenga estos tipos de datos.

Respuestas a la pregunta(13)

Su respuesta a la pregunta