加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c#-4.0 – 是否有一种融合了动态和强类型的好处的梦想语言?

发布时间:2020-12-15 08:45:25 所属栏目:百科 来源:网络整理
导读:我有兴趣学习一种语言,它在内部处理对象作为哈希表(如 JavaScript),但可以用强类型包装它们,以便在设计时提供代码完成/智能感知的好处.以下是我希望这种梦想语言能够发挥作用的方式: public class Lion{ public void Roar() { Console.WriteLine("Aaarrgghh
我有兴趣学习一种语言,它在内部处理对象作为哈希表(如 JavaScript),但可以用强类型包装它们,以便在设计时提供代码完成/智能感知的好处.以下是我希望这种梦想语言能够发挥作用的方式:
public class Lion
{
  public void Roar() { Console.WriteLine("Aaarrgghh");}
} 

public static Main(string[] args)
{
  object myCat = new object(); // just plain object,no type!
  // adding a Roar() method to the myCat instance 
  myCat.Roar += delegate() {Console.WriteLine("Miauew");}
  // At this point myCat should qualify to be a Lion.
  // So we should be able to successfully duck-type-cast 
  // her to a lion
  Lion myLion = myCat as Lion;
  // now the myLion reference is strongly typed,// so I expect the Intellisense window pop up 
  // and offer me the Roar() method when I hit the dot after "myLion"
  myLion.Roar();
}

我希望这个程序编译没有错误,无异常运行并打印
控制台上的“Miauew”.有没有可以做到这一点的语言?也许C#4.0?

解决方法

也许是C#4.0中的新动态类型.
看看这个: http://blogs.msdn.com/cburrows/archive/2008/10/27/c-dynamic.aspx

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读