随笔分类 -  C#

摘要:在基于Windows平台的程序设计中,事件(event)是一个很重要的概念。因为在几乎所有的Windows应用程序中,都会涉及大量的异步调用,比如响应点击按钮、处理Windows系统消息等,这些异步调用都需要通过事件的方式来完成。即使在下一代开发平台——.NET中也不例外。 那么什么是事件呢?所谓事件,就是由某个对象发出的消息,这个消息标志着某个特定的行为发生了,或者某个特定的条件成立了。比如用户点击了鼠标、socket上有数据到达等。那个触发(raise)事件的对象称为事件的发送者(event sender),捕获并响应事件的对象称为事件的接收者(event receiver)。 在这里,我 阅读全文
posted @ 2013-12-12 11:05 little white 阅读(316) 评论(0) 推荐(0) 编辑
摘要:VAR 是3.5新出的一个定义变量的类型其实也就是弱化类型的定义VAR可代替任何类型编译器会根据上下文来判断你到底是想用什么类型的至于什么情况下用到VAR 我想就是你无法确定自己将用的是什么类型就可以使用VAR 类似 OBJECT但是效率比OBJECT高点使用var定义变量时有以下四个特点:1. 必须在定义时初始化。也就是必须是var s = “abcd”形式,而不能是如下形式:var s;s = “abcd”;2. 一但初始化完成,就不能再给变量赋与初始化值类型不同的值了。3. var要求是局部变量。4. 使用var定义变量和object不同,它在效率上和使用强类型方式定义变量完全一样。 阅读全文
posted @ 2013-12-11 14:44 little white 阅读(227) 评论(0) 推荐(0) 编辑
摘要:1.C# 预处理指令#region使您得以在使用Visual Studio代码编辑器的大纲显示功能时指定可展开或折叠的代码块。 #region name 其中:name 希望给予将出现在 Visual Studio 代码编辑器中的区域的名称。 备注 必须用 #endregion 指令终止 #region 块。 #region 块不能与 #if 块重叠。但是,可以将 #region 块嵌套在 #if 块内,并且可以将 #if 块嵌套在 #region 块内。 示例 // preprocessor_region.cs #region MyClass definition public cl... 阅读全文
posted @ 2013-12-10 15:29 little white 阅读(1443) 评论(0) 推荐(0) 编辑
摘要:同步客户端存储示例下面的示例程序创建连接到服务器的客户端。 客户端使用一个同步套接字生成,因此,客户端应用程序的执行挂起,直到服务器返回响应。 应用程序将字符串发送到服务器并显示在控制台的服务器返回的字符串。using System;using System.Net;using System.Net.Sockets;using System.Text;public class SynchronousSocketClient { public static void StartClient() { // Data buffer for incoming data. ... 阅读全文
posted @ 2013-12-10 11:51 little white 阅读(272) 评论(0) 推荐(0) 编辑
摘要:Properties文件夹 定义你程序集的属性 项目属性文件夹 一般只有一个 AssemblyInfo.cs 类文件,用于保存程序集的信息,如名称,版本等,这些信息一般与项目属性面板中的数据对应,不需要手动编写Bin 目录用来保存项目生成后程序集,它有Debug和Release两个版本,分别对应的文件夹为bin/Debug和bin/Release,这个文件夹是默认的输出路径,我们可以通过:项目属性—>配置属性—>输出路径来修改。obj目录是用来保存每个模块的编译结果,在.NET中,编译是分模块进行的,编译整个完成后会合并为一个.DLL或.EXE保存到bin目录下。因为每次编译时默认 阅读全文
posted @ 2013-12-10 11:29 little white 阅读(929) 评论(0) 推荐(0) 编辑
摘要:public string name{get;set;}这种写法是dotNet2.0以后才可以这样写,目的是减轻程序员的工作量,它的实现就是楼上讲的由编译器生成 private string name; public string Name { get { return name; } set { name= value; } }这样的代码如果你要对属性做一些判断,如字符串不能为空,整数必须大于零等等这样的操作,那么你就没办法利用public string name{get;set;}这样的便利,必须老老实实写形如 public string Name { get { return name; 阅读全文
posted @ 2013-12-10 10:30 little white 阅读(516) 评论(0) 推荐(0) 编辑
摘要:静态构造函数是C#的一个新特性,其实好像很少用到。不过当我们想初始化一些静态变量的时候就需要用到它了。这个构造函数是属于类的,而不是属于哪里实例的,就是说这个构造函数只会被执行一次。也就是在创建第一个实例或引用任何静态成员之前,由.NET自动调用。class SimpleClass{ // Static constructor static SimpleClass() { // } //……}在使用静态构造函数的时候应该注意几点: 1、静态构造函数既没有访问修饰符,也没有参数。因为是.NET调用的,所以像public和private等修饰符就没有意义了... 阅读全文
posted @ 2013-12-10 10:16 little white 阅读(201) 评论(0) 推荐(0) 编辑
摘要:简单的来说partial是局部类型的意思就是说有这个关键字的类、结构或接口可以写成几个部分比如 public partial class Program { static void Main(string[] args) { } } partial class Program { public void Test() { } }编译后它相当于public class Program { static void Main(string[] args) { } public void Test() { } }... 阅读全文
posted @ 2013-12-10 10:01 little white 阅读(415) 评论(0) 推荐(0) 编辑
摘要:using System;using System.Collections.Generic;using System.Linq;using System.Text;using SuperSocket.SocketBase;using SuperSocket.SocketEngine.Configuration;using SuperSocket.SocketBase.Config;using System.Configuration;namespace SuperSocket.SocketEngine{ /// /// Bootstrap Factory /// p... 阅读全文
posted @ 2013-12-09 19:31 little white 阅读(1568) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示