如果我在C#4中有一个动态方法.它可以用于返回例如1次调用 - 一个字符串,另一个调用一个布尔值,另一个调用一个int吗?
或者是第一次运行时调用后动态方法集的返回类型?这意味着如果我第一次调用该方法它返回一个布尔值,那么对该方法的所有后续调用是否也返回布尔值?
一个dynamic方法可以在它选择的任何点自由地改变它的返回数据.例如
class Example {
private int m_count;
public dynamic GetData() {
switch(m_count++) {
case 0: return 42;
case 1: return "hello world";
default: return new object();
}
}
}
Run Code Online (Sandbox Code Playgroud)
一个dynamic类型的方法比拥有一个方法有点不同的object返回类型.它可以自由返回任何兼容的值object.唯一的问题是确保方法的调用者可以处理各种值.
| 归档时间: |
|
| 查看次数: |
216 次 |
| 最近记录: |