C#4.0_51CTO博客
C# 4.0的主要主题是动态编程。对象的意义变得越来越“动态”,它们的结构和行为无法
原创 2022-08-06 00:26:51
94阅读
C#4.0新特性
转载 精选 2011-07-27 16:53:26
311阅读
1. Duck Typing ("If it walks like a duck and quacks like a duck, it must be a duck.") [R
转载 2010-05-20 11:36:00
73阅读
2评论
var t1 = Task.Factory.StartNew<string>(() => { return “1111111”; }); //t1.Wait(); t1.ContinueWith(i => { this.Invoke(new EventHandler(delegate { ;}));
原创 2021-07-20 10:00:09
179阅读
<!--[endif]--> .NET 4.0引入了一个新概念,叫动态绑定。所谓绑定,就是对类型、成员和操作的解析过程。动态绑定意味着与编译器无关,而与运行时有关。 <!--[endif]--> 一、 基本概念<!--[endif]-->C# 4.0之前的变量声明,在编译时已经决定其类型,虽然C# 3.0提供了var关键字来声明隐式类型,但用var声明的变量终究逃不过编译器的法眼。
转载 2011-06-11 14:40:00
82阅读
园 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
转载 2011-11-03 16:11:00
43阅读
Attributes是一种新的描述信息,我们既可以使用attributes来定义设计期信息(例如 帮助文件,文档的URL
原创 2021-04-25 20:33:04
231阅读
Attributes是一种新的描述信息,我们既可以使用attributes来定义设计期信息(例如 帮助文件,文档的URL),还可以用attributes定义运行时信息(例如,使XML中的元素与类的成员字段关联起来)。我们也可以用attributes来创建一个“自描述”的组件。在这篇指南中我们将明白怎么创建属性并将其绑定至各种语言元素上,另外我们怎样在运行时环境下获取到attributes的一些信息
原创 2021-07-22 10:32:48
35阅读
C#新增了dynamic关键字,正因为这一个小小的关键字,C#动态特性向前迈进了一大步。dynamic是一个类型关键字,声明为dynamic的类型与"静态类型"(这里的静态类型是指编译时确定的类型,下同)相比最大的特点它是"动态类型",它会运行时尝试调用方法,这些方法的存在与否不是在编译时检查的,而是在运行时查找,如果方法存在并且参数正确,会正常调用,否则会抛出Microsoft.CSharp.RuntimeBinder.RuntimeBinderException异常。看一个最简单的示例: using System; namespace Xianfen
转载 2011-08-28 23:55:00
110阅读
2评论
NPLOT只有.NET1.1与.NET2.0版本,要在.NET4.0使用会出现问题。下面是解决方法。     下载NPLOT-0.9.10.0的源码。      在VS2010新建一个类库项目,删除自动创建的cs文件Class1.cs将源码src文件夹的所有文件复制到该项目的文件目录下,在项目中添加这些文件 试着编译一下,有错误右击引用,选择添加引用 选择.NET选择夹,添加Systm.Drawi
转载 2012-11-02 17:21:00
52阅读
2评论
系列目录 【已更新最新开发文章,点击查看详细】 C# 4 引入了一个新类型 dynamic。 该类型是一种静态类型,但类型为 dynamic 的对象会跳过静态类型检查。 大多数情况下,该对象就像具有类型 object 一样。 在编译时,将假定类型化为 dynamic 的元素支持任何操作。 因此,不必
原创 2019-07-15 16:34:00
572阅读
系列目录 【已更新最新开发文章,点击查看详细】 从 .NET Framework 4 开始,公共语言运行时支持将 COM 类型的类型信息直接嵌入到托管程序集中,而不要求托管程序集从互操作程序集中获取 COM 类型的类型信息。 由于嵌入式类型信息仅包含托管程序集实际使用的类型和成员,因此两个托管程序集
原创 2019-07-15 19:30:00
116阅读
系列目录 【已更新最新开发文章,点击查看详细】 C# 4 介绍命名实参和可选实参。 通过命名实参,你可以为特定形参指定实参,方法是将实参与该形参的名称关联,而不是与形参在形参列表中的位置关联。 通过可选参数,你可以为某些形参省略实参。 这两种技术都可与方法、索引器、构造函数和委托一起使用。 使用命名
原创 2019-07-15 17:16:00
63阅读
在社区很多人不看好的微软.NET开源实现Mono发布了Mono 2.8,这是一个重要的版本更新,有着显著
原创 2022-09-02 15:16:49
92阅读
以下代码是在VS2010中调试运行通过的using System;using System.Collections;// Declare the Tokens class:public class Tokens : IEnumerable{ private string[] ele
原创 2021-04-25 20:32:45
82阅读
Variance变性泛型的某个方面会让人感到奇怪,比如下面的代码是不合法的——IList<string> strings = new List<string>(); IList<object> objects =
原创 2021-04-25 20:34:14
134阅读
 Variance变性泛型的某个方面会让人感到奇怪,比如下面的代码是不合法的——IList strings = new List();   IList objects = strings;  第二个赋值是不允许的,因为strings和objects的元素类型并不一样。这样做有这充分的原因。如果允许那样写的话,你可能会写——objects[0] = 5;string s = stri
原创 2021-07-14 10:04:22
91阅读
看看代码: 1: dynamic a = 10; 2: a = a + 10; 3: Console.WriteLine(a.GetType()); 此段代码会输出 System.Int32,第二行不需要类型转换,因为在运行时识别类型。dynamic 在后台使用 System.Object 类型。但与 object 不同的是,动态类型不需要在编译时执行显
转载 2011-09-07 19:27:45
222阅读
以下代码是在VS2010中调试运行通过的using System;using System.Collections;// Declare the Tokens class:public class Tokens : IEnumerable{ private string[] elements; Tokens(string source, char[]
原创 2021-07-22 10:12:44
15阅读
1.简介 所谓zip(中文有拉链的意思),就是像拉链一样,把两个list缝合在一起。Python中有个zip函数可以用来方便的合并两个或者多个集合,例如: >>> firstName=['Freesc','Joshua','Ken']>>> lastName=['Huang','Guan','Wan
转载 2020-12-12 17:20:00
358阅读
2评论
  • 1
  • 2
  • 3
  • 4
  • 5