c#
文章平均质量分 92
rise51
充满激情,好交益友,哈哈哈哈哈,
展开
-
C# 2.0 泛型编程
C#泛型演示说明:此文章来源于: http://blog.csdn.net/shoutor/using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication1{ class Stack { private T[] store; private int size; public Stack()转载 2011-03-17 15:14:00 · 399 阅读 · 0 评论 -
泛型类 泛型方法
<br />泛型类 泛型方法 收藏 <br /> 泛型是自.NET2.0中的新概念。这个概念在java新版本中也一样受支持。泛型将类型参数的概念引入到.NET Framework中,类型参数可以让开发人员自由设计这样的类和方法。这些类和方法将一个或多个类型的指定推迟到代码声明并实例化该类或方法的时候。<br /> 简单地说,泛型用于解决以往采用object通用类型来支持所有类型的不足。采用object类型还需要进行强制转换,且往往会导致数据存储不容控制。而泛型解决了这一问题。<br />泛型转载 2011-03-17 14:49:00 · 352 阅读 · 0 评论 -
C#[Serializable]在C#中的作用-NET 中的对象序列化
转:C#[Serializable]在C#中的作用-NET 中的对象序列化 <br />为什么要使用序列化?最重要的两个原因是:将对象的状态保存在存储媒体中以便可以在以后重新创建出完全相同的副本;按值将对象从一个应用程序域发送至另一个应用程序域。例如,序列化可用于在 ASP.NET 中保存会话状态,以及将对象复制到 Windows 窗体的剪贴板中。它还可用于按值将对象从一个应用程序域远程传递至另一个应用程序域。本文简要介绍了 Microsoft .NET 中使用的序列化。<br />一.简介<br />转载 2011-02-23 15:56:00 · 424 阅读 · 0 评论 -
枚举类型(C# 编程指南)
枚举类型(C# 编程指南)Posted on 2009-03-03 16:35 ottox 阅读(681) 评论(0)编辑收藏枚举类型(C# 编程指南)<br /> <br />更新:2007 年 11 月<br />枚举类型(也称为枚举)为定义一组可以赋给变量的命名整数常量提供了一种有效的方法。例如,假设您必须定义一个变量,该变量的值表示一周中的一天。该变量只能存储七个有意义的值。若要定义这些值,可以使用枚举类型。枚举类型是使用 enum 关键字声明的。C#enum Days { Sunday, Mo原创 2011-02-17 16:06:00 · 505 阅读 · 0 评论 -
Enum 成员方法(MSDN)
Enum 成员方法(MSDN)Posted on 2009-03-03 21:23 ottox 阅读(107) 评论(0)编辑收藏 <br />Enum 成员方法<br />名称 <br />说明 <br />CompareTo <br />将此实例与指定对象进行比较并返回一个对二者的相对值的指示。 <br />Equals <br />已重载。 已重写。 返回一个值,该值指示此实例是否与指定的对象相等。 <br />Format <br />根据指定格式将指定枚举类型的指定值转换为其等效的字符串表示转载 2011-02-17 16:14:00 · 620 阅读 · 0 评论 -
enum(C# 参考)
enum(C# 参考)<br /> <br /> <br />enum 关键字用于声明枚举,即一种由一组称为枚举数列表的命名常量组成的独特类型。<br />通常情况下,最好是在命名空间内直接定义枚举,以便该命名空间中的所有类都能够同样方便地访问它。但是,还可以将枚举嵌套在类或结构中。<br />默认情况下,第一个枚举数的值为 0,后面每个枚举数的值依次递增 1。例如: enum Days {Sat, Sun, Mon, Tue, Wed, Thu, Fri};<br />在此枚举中,Sat 为 0,Sun转载 2011-02-17 16:10:00 · 452 阅读 · 0 评论 -
Enum 类(MSDN)
Enum 类(MSDN)Posted on 2009-03-03 17:16 ottox 阅读(92) 评论(0)编辑收藏<br />为枚举提供基类。 <br />命名空间: System<br />程序集: mscorlib(在 mscorlib.dll 中) 语法 Visual Basic(声明)<SerializableAttribute> _<ComVisibleAttribute(True)> _PublicMustInheritClassEnum _Inherits Va原创 2011-02-17 16:07:00 · 469 阅读 · 0 评论 -
用Visual C#获取系统信息四法
用Visual C#获取系统信息四法2007-12-07 13:30第一种方法:用SystemInformation 类<br /><br />SystemInformation提供静态方法和属性,它们可用于获取诸如 Windows 显示元素大小、操作系统设置、网络可用性和系统中所安装硬件的性能等信息,这种方法侧重于操作系统(这里特指Windows)的一些设置和状态。 第二种方法 :用Environment 类<br /><br />通过这种方法可检索的系统信息包括命令行参数、环境变量设置、调用堆栈的原创 2011-02-17 16:03:00 · 522 阅读 · 0 评论 -
C# Windows 窗体的.Net 框架绘图技术
C# Windows 窗体的.Net 框架绘图技术2009-02-12 11:58<br />From: http://hi.baidu.com/ysdonet/blog/item/823fd655a9f9ffc1b745ae91.html<br /> 当编写一个典型的Windows 窗体程序时,窗体和控件的绘制、效果等操作是不需要特别加以考虑的。这是为什么呢?因为通过使用 .Net 框架,开发人员可以拖动一系列的控件到窗体上,并书写一些简单的与事件相关联的代码然后在IDE中按F5,一个完完全转载 2011-02-25 09:41:00 · 654 阅读 · 0 评论 -
C# 4.0新特性-"协变"与"逆变"以及背后的编程思想
C# 4.0新特性-"协变"与"逆变"以及背后的编程思想<br />在《上篇》中我们揭示了“缺省参数”的本质,现在我们接着来谈谈C#4.0中另一个重要的新特性:协变(Covariance)与逆变(Contravariance)。对于协变与逆变,大家肯定不会感到陌生,但是我相信有很多人不能很清晰地说出他们之间的区别。我希望通过这篇文章能够让读者更加深刻的认识协变与逆变。但是也不排除另一种可能,那就是读者这篇文章你对这两个概念更加模糊。文章一些内容仅代表个人观点,如有不妥,还望指正。<br />目录 <br /转载 2011-01-20 14:03:00 · 699 阅读 · 0 评论 -
C# 4.0新特性
<br />C# 4.0新特性[日期:2010-10-06 18:12] 来源:CSDN 作者:未知 [字体:大中小] 本文介绍了作者希望在C# 4.0中希望看到的新特性,比如通过委托成员来实现接口、匿名返回类型等等,但很遗憾,在C# 4.0中并没有出现。<br /> 1. 通过委托成员来实现接口<br /> 在C# 4.0中可以通过委托来实现某个成员的接口,例如下面的代码:<br /> public class Foo : IList<br /> {<br /> private L转载 2011-01-20 13:24:00 · 421 阅读 · 0 评论 -
C# 3.0新特性之自动属性(Auto-Implemented Properties)
<br />C# 3.0新特性之自动属性(Auto-Implemented Properties)<br />2009年8月18日 云飞扬 发表评论 阅读评论 <br />-<br />万丈高楼平地起,基础是重中之重。所有我一定要搞点基础的东西,虽然已经是搞了几年程序了,有些基础知识也懂,但是没有系统的掌握。而且发现现在弄的B/S系统里很多技术真的很落后了,也许我现在学的新技术有些用不上,并不代表不要学,所有现在开始更加要全部重新学习或者复习一些基础东西。1.C# 3.0新特性之自动属性(Auto-Impl转载 2011-01-19 18:09:00 · 1103 阅读 · 0 评论 -
C# 3.0新特性之对象和集合初始化
<br />C# 3.0新特性之对象和集合初始化<br />2009年8月18日 云飞扬 发表评论 阅读评论 <br />-<br />在C# 3.0里,对象和集合初始化更容易了<br />继续新特性之自动属性,现在看看如何对象和集合初始化<br />用上篇的Point类<br />public class Point<br />{<br /> public int X { get; set; }<br /> public int Y { get; set; }<br />}<br />对象类初转载 2011-01-19 18:07:00 · 408 阅读 · 0 评论 -
c# 3.0新特性之使用Lambda表达式
<br />c# 3.0新特性之使用Lambda表达式<br />2009年8月18日 云飞扬 发表评论 阅读评论 <br />-<br />Working with Lambda Expressions 使用Lambda表达式<br />Lambda表达式有什么作用,它的使用方法是?<br />作用主要可以在匿名的方法的基础上,进一步简化代码,也可以隐藏delegate关键字<br />比如在2.0中代码如下:<br />var innerPoints = points.FindAll(delegate(转载 2011-01-19 18:04:00 · 523 阅读 · 0 评论 -
c# 3.0新特性之使用扩展方法
<br />c# 3.0新特性之使用扩展方法<br />2009年8月18日 云飞扬 发表评论 阅读评论 <br />-<br />Extension Methods 使用扩展方法<br />使用的时候需要注意的地方<br />1.扩展方法所属的类必须为静态非泛型类,扩展方法也是静态方法<br />2.第一个参数为被扩展的类型实例,并且必须用this进行修饰<br />3.第二个参数开始对对应被扩展类型实例所传递的参数列表,即扩展类型实例<br />传递的第一个参数对应扩展方法定义的第二个参数,依次类推<b转载 2011-01-19 18:01:00 · 395 阅读 · 0 评论 -
基础_C# 迭代器
C# 迭代器迭代器是 C# 2.0 中的新功能。迭代器是方法、get 访问器或运算符,它使您能够在类或结构中支持 foreach 迭代,而不必实现整个 IEnumerable 接口。您只需提供一个迭代器,即可遍历类中的数据结构。当编译器检测到迭代器时,它将自动生成 IEnumerable 或 IEnumerable 接口的 Current、MoveNext 和 Dispose 方法。 迭代器概述<br />迭代器是可以返回相同类型的值的有序序列的一段代码。<br />迭代器可用作方法、运算符或 get 访问转载 2011-01-19 17:29:00 · 347 阅读 · 0 评论 -
C# 2.0 泛型编程
<br /> C#泛型演示说明:此文章来源于: http://blog.csdn.net/shoutor/using System;<br />using System.Collections.Generic;<br />using System.Linq;<br />using System.Text;<br /><br />namespace ConsoleApplication1<br />{<br /> class Stack<T><br /> {<br /> pri转载 2011-03-17 15:14:00 · 288 阅读 · 0 评论 -
List 泛型类
List 泛型类List 泛型类<br />注意:此类在 .NET Framework 2.0 版中是新增的。<br />表示可通过索引访问的对象的强类型列表。提供用于对列表进行搜索、排序和操作的方法。 <br />命名空间:System.Collections.Generic<br />程序集:mscorlib(在 mscorlib.dll 中)<br />语法:<br />C#<br /><br />[SerializableAttribute] <br />public class List<T> :转载 2011-03-17 15:18:00 · 401 阅读 · 0 评论 -
泛型的优点
泛型的优点<br />在公共语言运行库和 C# 语言的早期版本中,通用化是通过在类型与通用基类型 Object 之间进行强制转换来实现的,泛型提供了针对这种限制的解决方案。通过创建泛型类,您可以创建一个在编译时类型安全的集合。<br />使用非泛型集合类的限制可以通过编写一小段程序来演示,该程序利用 .NET Framework 基类库中的 ArrayList 集合类。ArrayList 是一个使用起来非常方便的集合类,无需进行修改即可用来存储任何引用或值类型。 public static void Ma转载 2011-03-17 15:20:00 · 467 阅读 · 0 评论 -
C# 泛型方法中反射常用方法浅析
C# 泛型方法中反射常用方法浅析http://developer.51cto.com 2009-08-24 16:19 佚名 MSDN 我要评论(0)C# 泛型方法中反射常用方法都是什么呢?C# 泛型方法中反射常用方法使用的各自特点又是什么呢?那么本文就向你介绍详细的内容。 C# 泛型接口应用浅析C# 泛型方法概念及使用浅析C# 泛型数组学习小结C# 泛型委托学习经验浅析浅析运行库中的C# 泛型<br /> <br />C# 泛型方法中反射常用方法使用的:因为公共语言运行库 (CLR) 能够转载 2011-03-17 16:03:00 · 1804 阅读 · 0 评论 -
C#中堆和栈的区别分析(有待更新总结2)
C#中堆和栈的区别分析(有待更新总结2) 收藏 线程堆栈:简称栈 Stack托管堆: 简称堆 Heap使用.Net框架开发程序的时候,我们无需关心内存分配问题,因为有GC这个大管家给我们料理一切。如果我们写出如下两段代码:代码段1:public int AddFive(int pValue) { int result; result = pValue + 5; return result;转载 2011-03-17 16:32:00 · 524 阅读 · 0 评论 -
C#中堆和栈的区别分析
<br />C#中堆和栈的区别分析(有待更新总结) 收藏 <br />一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 3、全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,转载 2011-03-17 16:30:00 · 424 阅读 · 0 评论 -
C#通过反射调用泛型参数方法介绍
C#通过反射调用泛型参数方法介绍<br />发布日期:2010年11月08日<br />最近在学习EDM,发现LinqPad是一个好东西,可以运行Linq To Sql, Entity SQL Language脚本,但不会用ESql查询功能,始终报错,半天找不到门道,一怒之下决定自己写一个小型的ESql查询器。<br />将比较重要的知识点归纳了一下,贴几段重要的代码,以免下次遗忘。<br /> private void btnRunQuery_Click(object sender, Eve转载 2011-03-17 16:04:00 · 2749 阅读 · 0 评论 -
C#堆与栈的区别
C#堆与栈的区别2010-11-01 22:42<br />堆和栈的区别 <br /><br />一、预备知识—程序的内存分配 <br />一个由C/C++编译的程序占用的内存分为以下几个部分 <br />1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 <br />操作方式类似于数据结构中的栈。 <br />2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 <br />收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表转载 2011-03-17 16:15:00 · 907 阅读 · 0 评论 -
C#中反射泛型
C#中反射泛型<br />ASP.NET2010-03-11 17:29:05阅读338评论1 字号:大中小 订阅<br />假设1我有个类叫SortClass,类中有个BubbleSort(int[] array)用于给数组进行排序。<br />假设2我有个类叫SortT<T>,类中有个BubbleSort(T[] array)用于给数组进行排序。<br />现在我需要在控制台应用程序里通过反射调用BubbleSort方法为数组int[] array进行排序。<br />int[] array = ne转载 2011-03-17 16:00:00 · 1793 阅读 · 0 评论 -
如何通过C#.NET中的反射机制来创建C#.NET泛型类的实例,并调用其方法??
<br />如何通过C#.NET中的反射机制来创建C#.NET泛型类的实例,并调用其方法??悬赏分:40|解决时间:2008-11-25 16:37|提问者:rjgaoyuan请举一个简单易懂的小例子来说明…反射普通类和反射泛型类是不同的…public abstract class BusinessManager{ /// <summary> /// 添加一个新实体 /// </summary> /// <param nam转载 2011-03-17 15:58:00 · 852 阅读 · 0 评论 -
Casting (C# Programming Guide)
Casting (C# Programming Guide)Visual Studio 2005Other Versions Visual Studio 2010Visual Studio 2008<br /> <br />Converting between data types can be done explicitly using a cast, but in some cases, implicit conversions are allowed. For example:VBC#C++F#JSc转载 2011-03-17 15:45:00 · 504 阅读 · 0 评论 -
概述C# Cast
<br />概述C# Cast<br />www.firnow.com 时间 : 2010-07-02 作者:网络 编辑:Mr.阿布 点击: 50 [ 评论 ]<br />-<br />-<br />这里介绍用了C# Cast,我们的代码很精简。Cast甚至还可以用在所有控件的基类Control上,它的Controls属性也是非泛型的!<br />窗体控件中是有个List控件(ASP.Net)和一个ListView控件(WinForm)。<br />就以ListView为例子吧,ListVie转载 2011-03-17 15:42:00 · 2012 阅读 · 0 评论 -
泛型和数组
泛型和数组<br />在 C# 2.0 中,下限为零的一维数组自动实现 IList<T>。这使您可以创建能够使用相同代码循环访问数组和其他集合类型的泛型方法。此技术主要对读取集合中的数据很有用。IList<T> 接口不能用于在数组中添加或移除元素;如果试图在此上下文中调用 IList<T> 方法(如数组的 RemoveAt),将引发异常。<br />下面的代码示例演示带有 IList<T> 输入参数的单个泛型方法如何同时循环访问列表和数组,本例中为整数数组。class Program2<br /> {转载 2011-03-17 15:27:00 · 413 阅读 · 0 评论 -
泛型方法
泛型方法泛型方法是使用类型参数声明的方法,如下所示:<br /> class SwapTest<br /> {<br /> static void Swap<T>(ref T left, ref T right)<br /> {<br /> T temp;<br /> temp = left;<br /> left = right;<br /> right = temp;<br />转载 2011-03-17 15:26:00 · 426 阅读 · 0 评论 -
泛型接口
泛型接口<br />为泛型集合类或表示集合中项的泛型类定义接口通常很有用。对于泛型类,使用泛型接口十分可取,例如使用 IComparable<T> 而不使用 IComparable,这样可以避免值类型的装箱和取消装箱操作。.NET Framework 2.0 类库定义了若干新的泛型接口,以用于 System.Collections.Generic 命名空间中新的集合类。<br />将接口指定为类型参数的约束时,只能使用实现此接口的类型。下面的代码示例显示从 GenericList<T> 类派生的 Sorte转载 2011-03-17 15:24:00 · 412 阅读 · 0 评论 -
泛型接口
泛型接口<br />为泛型集合类或表示集合中项的泛型类定义接口通常很有用。对于泛型类,使用泛型接口十分可取,例如使用 IComparable<T> 而不使用 IComparable,这样可以避免值类型的装箱和取消装箱操作。.NET Framework 2.0 类库定义了若干新的泛型接口,以用于 System.Collections.Generic 命名空间中新的集合类。<br />将接口指定为类型参数的约束时,只能使用实现此接口的类型。下面的代码示例显示从 GenericList<T> 类派生的 Sorte转载 2011-03-17 15:23:00 · 409 阅读 · 0 评论 -
泛型类
泛型类<br /> 泛型类封装不是特定于具体数据类型的操作。泛型类最常用于集合,如链接列表、哈希表、堆栈、队列、树等,其中,像从集合中添加和移除项这样的操作都以大体上相同的方式执行,与所存储数据的类型无关。<br /> 对于大多数需要集合类的方案,推荐的方法是使用 .NET Framework 2.0 类库中所提供的类。有关使用这些类的更多信息。<br /> 一般情况下,创建泛型类的过程为:从一个现有的具体类开始,逐一将每个类型更改为类型参数,直至达到通用化和可用性的最佳平衡。创建您自己的转载 2011-03-17 15:22:00 · 412 阅读 · 0 评论 -
泛型类型参数的约束
泛型类型参数的约束<br />在定义泛型类时,可以对客户端代码能够在实例化类时用于类型参数的类型种类施加限制。如果客户端代码尝试使用某个约束所不允许的类型来实例化类,则会产生编译时错误。这些限制称为约束。约束是使用 where 上下文关键字指定的。下表列出了六种类型的约束:约束 说明 <br />T:结构<br />类型参数必须是值类型。可以指定除 Nullable 以外的任何值类型。有关更多信息,请参见使用可空类型(C# 编程指南)。<br />T:类<br />类型参数必须是引用类型,包括任何类、接口、转载 2011-03-17 15:21:00 · 575 阅读 · 0 评论 -
泛型类型参数
泛型类型参数<br />在泛型类型或方法定义中,类型参数是客户端在实例化泛型类型的变量时指定的特定类型的占位符。泛型类(如泛型介绍(C# 编程指南)中列出的 GenericList<T>)不可以像这样使用,因为它实际上并不是一个类型,而更像是一个类型的蓝图。若要使用 GenericList<T>,客户端代码必须通过指定尖括号中的类型参数来声明和实例化构造类型。此特定类的类型参数可以是编译器识别的任何类型。可以创建任意数目的构造类型实例,每个实例使用不同的类型参数,如下所示:GenericList<float转载 2011-03-17 15:21:00 · 598 阅读 · 0 评论 -
C#-用Stopwatch类进行性能(时间)测试
C#-用Stopwatch类进行速度测试<br />软件的运行速度必须要在用户可以接受的范围内。通常,改善那些短暂的但频繁使用的例程的速度会大幅度地提高软件的整体速度。<br /> 要改善速度,当然首先要能够量度时间。好,那我们考虑一下在跑道上的情况,枪声一响,马上按下秒表开始计时,在选手到达终点那一刻结束计时,这时就可以知道该选手所用的时间了。要开始对下一轮比赛计时前,要先将秒表归零。.NET2.0也提供了这样一个秒表:Stopwatch类,它可以比较精确地测量时间。 <br /> 速度转载 2011-01-18 11:31:00 · 1185 阅读 · 0 评论 -
谈谈C# 4.0新特性“缺省参数”的实现
谈谈C# 4.0新特性“缺省参数”的实现<br />C#4.0关于缺省参数的新特性,相信大家都不会陌生。所谓缺省参数,顾名思义,就是在声明方法的某个参数的时候为之指定一个默认值,在调用该方法的时候如果采用该默认值,你就无须指定该参数。和很多语言层面特性(语法糖)的实现一样,缺省参数也是编译器为我们玩的一个小花招。缺省参数最终体现为两个特殊的自定义特性OptionalAttribute和DefaultParameterValueAttribute 。<br />目录 <br />一、缺省参数的用法 <br /转载 2011-01-20 13:58:00 · 562 阅读 · 0 评论 -
C#实现控制台退出控制
using System;using System.Runtime.InteropServices;using System.Threading;using System.Diagnostics;namespace ConsoleApplication3...{ public delegate bool ConsoleCtrlDelegate(int dwCtrlType); /**//// /// Class1 的摘要说明。 /// clas转载 2011-01-13 13:53:00 · 1308 阅读 · 0 评论 -
C#下的进程间的通讯 -- 共享内存--内存互斥控制
C#下的进程间的通讯 -- 共享内存篇 收藏 【摘要】这篇文章早就想发了,可是一直没有时间整理,今天总算发上来了。上次发了利用发消息实现的C#进程间的通讯,这次又使用共享内存了,他们应用范围是不同的,共享内存适用于共享大量数据的情况。本文章利用了前面的一篇.net 1.1 下实现的信号量的类,在.net 1.1 下实现,如果在.net 2.0 下实现的话就用不到我的那个信号量的类了,因为这个类在.net 2.0是提供的。【全文】首先还是定义非托管调用,如下:const int INVALID_HAND转载 2011-01-11 17:36:00 · 745 阅读 · 0 评论 -
C#_使用微软消息队列实现C#进程间通信
使用微软消息队列实现C#进程间通信顾名思义,微软消息队列(MSMQ)是一种给队列发送消息以便稍后进行处理的方法。消息由一个“Producer”(生产者)应用程序发送出去,再由一个“Consumer”(消费者)应用程序返回。这两个应用程序可以在同一台机器上,在整个网络中,或甚至是位于并不总是连接在一起的不同机器上。MSMQ具有故障保险特性,因为如果第一次传送失败,它会重新发送消息。这样可保证你的应用程序消息到达它们的目的地。访问MSMQ通过.NET访问队列由System.Messaging.MessageQu转载 2011-01-10 15:28:00 · 539 阅读 · 0 评论