题
C#4.0中的动态变量可以是类的成员,还是传入方法或从方法返回?来自C#3.0的var不可能,但我还没有看到任何关于动态是否可能的提及。
解决方案
以上所有。我在VPC中尝试了它们并且能够完成所有这些。请参阅“C#中的新功能”文档
其他提示
本书的代码片段“CLR via C#,3rd Ed”显示动态实施:
using System;
using System.Dynamic;
static class DyanmicDemo
{
public static void Main() {
for(Int32 demo =0; demo < 2; demo++) {
dynamic arg = (demo == 0) ? (dynamic) 5 : (dynamic) "A";
dynamic result = Plus(arg);
M(result);
}
}
private static dynamic Plus(dynamic arg) { return arg + arg; }
private static void M(Int32 n) { Console.WriteLine("M(Int32): " + n); }
private static void M(String s) { Console.WriteLine("M(String): " + s); }
}
当我执行Main时,我得到以下输出:
M(Int32):10
M(String):AA
不隶属于 StackOverflow