目标:重新学习C#基础知识,重点通过阅读源码和分析运行机制着手。 基础 集合: 集合分类:可以分为非泛型集合和泛型集合,二者均间接实现了IEnumerble接口 非泛型集合:非泛型集合位于System.Collection命名空间,它可以存储多种类型的对象,其中在常用的是ArrayList集合和Hashtable集合。非泛型集合一般较少使用了。ArrayList可以容纳不同类型的对象,可以将int,string,object等类型对象同时加入到集合中 泛型集合:泛型集合...
CAD二次开发&C#.Net编程-CAD创建右键菜单 private static ContextMenuExtension m_ContextMenu;//装载右键菜单public static void Attach(){//右键菜单 对象m_ContextMenu = new ContextMenuExtension();m_ContextMenu.Title = "修改";//右键菜单项及其事件MenuItem MenuItem_1 = new MenuItem("竖井");MenuItem_1.Click += new EventHandler(MenuItem_1_Click);//菜单项添加到右键菜单m_ContextMenu.MenuItems.Add(MenuItem_1);//...
一、什么是同步和异步?同步(英语:Synchronization),指对在一个系统中所发生的事件(event)之间进行协调,在时间上出现一致性与统一化的现象。说白了就是多个任务一个一个执行,同一时刻只有一个任务在执行。 异步(英语:Asynchronization),指的是让CPU暂时搁置当前请求的响应,处理下一个请求,当通过轮询或其他方式得到回调通知后,开始运行。多线程将异步操作放入另一线程中运行,通过轮询或回调方法得到完成通知,但是完成...
介绍Async、Await是net4.x新增的异步编程方式,其目的是为了简化异步程序编写Async方式,使用Async标记Async1为异步方法,用Await标记GetRequestStreamAsync表示方法内需要耗时的操作。主线程碰到await时会立即返回,继续以非阻塞形式执行主线程下面的逻辑。当await耗时操作完成时,继续执行Async1下面的逻辑static async void Async1() {HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create("http://cnblogs.com/");await ...
C# 与C++ 联合编程 C#传入一个引用变量,让C++赋值 使用%号,类似于C++的引用,C#的Ref
static string Greeting(string name){Task.Delay(3000).Wait();return $"Hello,{name}";}static Task<string> GreetAsync(string name){return Task.Run<string>(() =>{return Greeting(name);});}async static void CallerWithAsync(){Console.WriteLine("1");string result = await GreetAsync("倪司令");Console.WriteLine("2");Console.WriteLine(result);}定义方法GreetingAsync,可以使方法异步化。基于任务的异步模式指定,...
下面的过程演示了如何将遵循标准 .NET 模式的事件添加到类和结构中。The following procedure demonstrates how to add events that follow the standard .NET pattern to your classes and structs. .NET 类库中的所有事件均基于 eventhandler 委托,定义如下:All events in the .NET class library are based on the eventhandler delegate, which is defined as follows: C# publicdelegate void EventHandler(object sender, ...
一、C# .NET 网络编程相关类 IPAddress 类 用于表示一个 IP 地址,常用构造方法: IPAddress address = IPAddress.Parse("192.168.1.1"); IPAddress 类还有其他的一些共用方法,具体可以在 IPAddress类 查询。 DNS 类 它是一个静态类,主要用途将主机名和电子邮件目标地址映射成 IP 地址,即域名解析功能。常用方法如下:DNS 类还提供了异步的方法,具体可以参考?DNS 类 。 IPEndPoint 类 表示指定 IP 地址和端口号的组合,两个...
IL基础 intermeditae Language的简称,中文是中间语言 不管是什么语言编的.NET程序,最后都会被各自的编译器编译成IL指令,程序运行的时候**,.NET JIT编译器从程序集读入IL指令并将其动态编译为可被本地CPU执行的机器指令再执行** 使用ildasmIL可以看成是一个面向对象的汇编语言,他提供了许多指令直接对对象进
【1】6.2 运算符 1.&符在C#里是逻辑与运算。管道符号|在C#里则是逻辑或运算。%运算符用来返回除法运算的余数,因此当x=7时,x%5的值将是2。 【2】6.2.1 运算符的简写 1.下面的例子++运算符来演示前缀式和后缀式之间的不同表现:int x = 5; if (++x == 6) // true – x先自加,再进行判断,此时x为6,因此为true。 {Console.WriteLine("This will execute"); } if (x++ == 7) // false – x先判断是否等于7,此时x为6,不等于7,所...
在介绍事件之前,我们先讲解委托,然后由委托衍生讲解事件。 现有这样的需求:要求在猫叫之后,执行狗哭,老鼠跑,孩纸哭的动作。 初步的实现如下: class Program{static void Main(string[] args){Cat cat = new Cat();cat.Miao();}}public void DogSaying(){Console.WriteLine("the dog is barking");}public void BabyCry(){Console.WriteLine("the baby is crying");}public void MouseRunning(){Console.WriteLine("the ...
C++:通过调用两个Lib和dll文件来使用 C#:主要是通过MalconDotNet.dll来实现
目录:.Net框架概述 C#数据类型 集合组织 类的方法 继承和多态 面向对象原则和特征 可扩展标记语言 文件操作1.概述完全支持面向对象编程,提高了软件的可复用性,可扩展性,可维护性和灵活性 支持Web、数据库、云计算、SOA1.1框架体系结构 .NET框架有两个主要组件:CRL 是.NET框架的基础,有两部分组成:① CLS 公共语言规范 ② CTS 通用类型系统FCL 是一个综合性的面向对象的可重用类型集合1.2面向对象类是类别 类是模子 类是对象...
panel面板 splitContainer分隔容器table control
一、C#简单helloworld程序 1.用C#编写一个命令行/控制台hello world程序,实现如下功能:在屏幕上连续输出50行“hello cqjtu!重交物联2018级”; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace helloworld控制台 {class Program{static void Main(string[] args){for (int i = 0; i < 50; i++){Console.WriteLine("hello cqjtu!重交物联2018级...