为啥“泛型”非得在编译期把类型参数定死?——大白话讲透 C# 泛型背后的规矩(含很多生活比喻)
很多人学 C# 泛型(Generic)的时候,一开始感觉它特别“魔法”:
List<int>、Dictionary<string, GameObject>T Get<T>()where T : class- 还能写出超级通用的代码
但过不了多久,就会遇到一个让人抓狂的场景:
“我运行时才知道类型,能不能把 T 传进去?为什么泛型老让我编译期就确定类型参数?”
比如你想做个通用调用器:
objectCall(stringtypeName,string