Nie sądzę, że można to zrobić w języku C#, ale publikując to tylko, aby się upewnić. Oto mój problem. Chciałbym zrobić coś takiego w C#:Typy ogólne z parametrem typu w C#
var x = 10;
var l = new List<typeof(x)>();
lub
var x = 10;
var t = typeof(x);
var l = new List<t>();
Ale oczywiście to nie działa. Chociaż nie powinno to stanowić problemu, ponieważ typ t jest rozwiązywany podczas kompilacji. Rozumiem, że można to rozwiązać za pomocą refleksji, ale ponieważ typy są znane w czasie kompilacji, użycie refleksji byłoby przesadą.
wynosi x zawsze będzie 10 czy też jest to tylko dowód pojęcie? Zastanawiam się, czy można uniknąć użycia słowa kluczowego var. –
To tylko dowód koncepcji. Próbowałem użyć tego rodzaju kodu dla Func <> i Expression <>, aby pozbyć się nadmiarowego pisania. Tak więc typ można jawnie zadeklarować:
– Max