Quiero crear una función genérica sencillaC#: Cómo utilizar el método genérico con "fuera" variable de
void Assign<T>(out T result)
{
Type type = typeof(T);
if (type.Name == "String")
{
// result = "hello";
}
else if (type.Name == "Int32")
{
// result = 100;
}
else result = default(T);
}
Uso:
int value;
string text;
Assign(value); // <<< should set value to 100
Assign(text); // <<< should set text to "hello"
Mi pregunta es ¿cómo se programa el código para establecer estos valores, es decir. los códigos faltantes en la sección de comentarios.
Gracias por cualquier ayuda.
Muchas gracias; esto funciona. La razón por la que estoy usando un enfoque genérico es para simplificar mi código. Porque el "código de asignación" solo es necesario para un tipo específico (por ejemplo, una cadena); sería malo crear funciones sobrecargadas para todos los tipos posibles. resultado = predeterminado (T) // es el comportamiento común –
No estoy de acuerdo con usted. Creo que la sobrecarga es exactamente por eso. Use medicamentos genéricos solo cuando sea necesario. – Sheldon