![]() |
1
2
延迟绑定不会像您认为的那样发生;编译器将调用绑定到
如果您愿意,可以在这里使用反射。这样的解决方案看起来像:
|
![]() |
2
3
多态性不适用于方法调用的参数。一种方法,您可以使用它来检查obj的类型,将其强制转换为特定的类型,然后调用适当的重载。
|
![]() |
3
2
您应该遵循的模型是.NET转换类中的模型,您没有理由使构造函数成为泛型,它不会给表带来任何影响。将转换例程更改为静态方法,将类本身更改为静态:
然后,当调用其中一个转换方法时,编译器将选择要调用的适当重载:
编辑 : 如果您执行以下操作:
它不会工作,因为编译器不知道匹配重载的类型。你必须把它铸造出来,它会起作用:
|
![]() |
4
1
这是因为编译器不知道
简单例子:
请注意,实际上我手头没有编译器,这可能不是逐字编译,而是足够接近。 |
![]() |
A B · C#Excel自动调整列避免长文本时出错 4 月前 |
![]() |
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 4 月前 |
![]() |
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 4 月前 |
|
Sei · Avalonia/WPF将路由器传递到控制模板 4 月前 |