C#
文章平均质量分 55
buaazyp
这个作者很懒,什么都没留下…
展开
-
C#入门(1):最简单的控制台程序
本系列为本人学习C#语言的笔记。本人属于有C语言基础的机械类毕业生,现由于工作原因需要学习C#语言,使用的参考书为《C#入门经典》第七版,希望能给看本文的各位一点启发。话不多说,先上代码,这是参考书一开头给出的控制台程序,其地位大概相当于C语言中的"Hello World!"。因为我有着c语言基础,所以我将把这个程序跟hello world程序进行比较。using System;using Sy...原创 2018-04-08 16:16:42 · 4486 阅读 · 1 评论 -
C#:委托(delegate)与事件(event)
事件是面向对象语言中一种很重要的思想。在面向过程的编程中,如果我需要对某一变量的变化做出反应,那么我需要每隔固定时间读取一次变量,这是一种比较原始的做法。 在面向对象的编程中,解决这一问题的技术就是事件(event),按照我的理解事件有点像单片机里的中断,就是在程序中发生了某些变化(例如鼠标单击,键盘按下),这时会调用一些特定的代码进行执行,而在平常时候(也就是不产生事件的时候)这些...原创 2018-06-22 09:58:03 · 448 阅读 · 0 评论 -
C#:如何在非窗口类中设置定时器
在窗口类中设置定时器是很轻松的事情,只需要拖个插件就好。然而有时候在非窗口类中许需要我们设置定时器,这时候我们应该怎么做? 仙子啊用一个简单例子说明,该程序作用是每隔十秒在控制台中输出“我最帅”。C#为我们提供了一个专门的定时器类System.Timers.Timer,当我们需要调用定时器时,可以先手动输入代码实例化一个定时器。 System.Timers.Timer timer1 ...原创 2018-06-23 09:11:34 · 1749 阅读 · 1 评论 -
C#:ref ,out关键词
ref,out两个关键词原创 2018-06-08 13:49:29 · 181 阅读 · 0 评论 -
C#:重写基函数(override)
面向对象编程的三大特性是继承,封装和多态。当我们从父类中继承了一种方法,但是我们事实上需要的是另外一种方法,这时候我们就可以通过重写方法,实现一个方法名对应多种方法。 举例来说,我们有一个...原创 2018-06-29 11:10:41 · 1609 阅读 · 0 评论 -
C#:泛型
按照我的理解,泛型指的是“加强的类型”。举例来说,我们使用传统的基础数据类型,int,float,double这样的变量,需要先声明再赋值然后才能引用,但是如果声明了没赋值就开始引用呢?那么就会报错。但是有时候,对于一些程序中的某些变量而言,空(null)是被允许而且在有些情况下是有意义的,那这时候我们就要使用泛型。对于基础数据类型的泛型来说,区别仅仅在于它可以为空,接下来用一个例子进行说明,...原创 2018-07-18 15:23:06 · 1097 阅读 · 0 评论 -
C#:如何输出数据到excel表格中
最近需要将工作中产生的一些数据发到excel表格内进行处理,因此记录下解决问题的思路一:如何创建一个excel文件使用FileStream类,代码如下string fileDir = "e:\\VSWorkSpace\\TryForm\\TryForm\\bin\\Debug\\";string fileName = fileDir + DateTime.Now.ToLongDat...原创 2018-08-03 11:15:31 · 7630 阅读 · 2 评论 -
C#:枚举
按照我的理解,枚举是一种程序员按照自身需求,自己定义的有有限种情况的变量。举例来说,我现在在做机器人,我希望对机器人的运行方向进行定义,按照一般地理学的原理,我们习惯上会按照东南西北四个方向对机器人行走方向进行划分。这个时候,方向就是我们需要自己定义的一个变量,它是C#语言中原本没有定义的,同时它的可能取值又是有限的。这种情况下,我们就可以使用枚举的方式来解决它。...原创 2018-05-27 14:06:37 · 259 阅读 · 0 评论 -
C#入门(2):变量命名
将C语言和C#语言做一个对比,我们会发现使用C#的工程,往往比用C语言这样面向对象的语言所写出的工程大得多。很多时候,一个工程要分成很多部分交给不同的人来编写,这就要求我们使用一种通行的变量命名规则来进行沟通,而不能像写C语言那样随心所欲(比如说a[],我哪知道这是用来干嘛的)。现在比较通行的规则是,使用变量的作用来进行命名,然后对单词的首字母大写从而方便阅读,在此基础上,对首单词的首字母是否进行...原创 2018-04-09 08:47:22 · 241 阅读 · 0 评论 -
C#入门(3):名称空间
名称空间是.NET编程中的一种独特技术,一般认为,名称空间是一种代码容器,当我们把代码放进名称空间中后,我们就可以根据名称空间的名字唯一确定的找到所需要的代码。需要说明的一点,名称空间是可以嵌套的,例如以下代码是正确的:namespace Level1{ namespace Level2 { }}名称空间就像是一个个不同大小的盒子,里面存储了我们需要的代码,当我们需要...原创 2018-04-09 09:23:26 · 245 阅读 · 0 评论 -
C#:字段,属性,get,set
作为一种面向对象的语言,对象的概念渗透在C#的每一种技术中,同时因为是在C++基础上发展起来的语言,C#有着一些和C++不同的面向对象语言特点,所以今天呢我就说一下C#中一种特殊的类成员,属性。学习C语言的时候,我只知道变量和函数,即使后来用MFC,也只有了一点面向对象的概念。所以当我看到C#里面有着字段和属性两种群成员时,我的第一反应就是:WTF!!!但是我进一步学习之后,觉得有些东西并没有想象...原创 2018-04-24 18:44:11 · 821 阅读 · 0 评论 -
C#: //todo
最近在看前辈留下来的祖传代码,发现里面有很多//todo的标记,在此进行一下说明。简单来说,//todo就类似于我们看书时使用的书签,当我们为了某种功能预留下编程的入口,但是短时间内又没时间完成代码时就可以留下一个//todo标记,它仅仅代表着这里还有坑没填。在VS编程环境下,在视图菜单下会有一个任务列表的选项,我们打开这是视图,可以很方便的管理我们做出的//todo标记,跟书签一样,可以帮助...原创 2018-04-24 18:55:25 · 1629 阅读 · 0 评论 -
C#:static关键词
在我遇见的程序里,static主要有以下三种用法一:static放在类中方法名前例如,我定义了一个名叫myClass的类,其中定义了一个叫test的静态方法。如下代码 public class myClass { static public int test(int a) { return a+1; } }这...原创 2018-04-25 17:36:26 · 203 阅读 · 0 评论 -
C#: Array.Copy()方法
Array.Copy()方法是C#提供的一个用于数组复制的方法。其第一个参数是被复制的数组名,第二个参数是复制到的数组名,第三个参数是要复制的数据数目。原创 2018-04-26 21:19:20 · 37489 阅读 · 0 评论 -
C#:类是引用类型
最近学习C#遇见一个很有一个的概念,引用类型与值类型,这个部分我现在还是一知半解,就写一部分自己的体会吧。首先直接上代码。public class MyClass { public int val; } static void Main(string[] args) { MyClass...原创 2018-05-16 08:54:04 · 1101 阅读 · 0 评论