Ne, ne, nobene večje zmede. Le priložnost, da se kaj naučimo. Povezava, ki jo je navedel Damjan, je dobra in vam priporočam, da jo naštudirate. Gre pa tudi z dynamic (a pozor, dynamic uporabljati je malček nevarno, ker s tem prevajalniku naročimo, da naj "nič ne pazi").
A recimo, da nas ne moti - potem gre takole (poglejte dva načina izvedbe seštevanja nizov!)
public static T vsota<T>(T prvi, T drugi)
{
dynamic p = prvi;
dynamic d = drugi;
if (p is bool)
return p == d;
if (p is string)
{
dynamic rez = $"Dolz:{p.Length + d.Length}";
return rez;
}
dynamic vs = p + d;
return vs;
}
public static int vsota(String prvi, String drugi)
{
return prvi.Length + drugi.Length;
}
static void Main(string[] args)
{
Console.WriteLine(vsota(10, 5));
Console.WriteLine(vsota(10.5, 5.5));
Console.WriteLine(vsota(10, 5.0));
Console.WriteLine(vsota("10", "5"));
Console.WriteLine(vsota<String>("10", "5"));
Console.WriteLine(vsota(true, false));
}In da ne bo nesporazumov - ne, takšna naloga ne pride v poštev za izpit ;-) Je pa fino, če te stvari poznate.