摘要: namespace ConsoleApplication1{ class Program { static void Main(string[] args) { People p = new People(); p.age = 10; Pass(p); Console.WriteLine("p.age = {0}", p.age); Console.ReadKey(); } static void Pass(Peopl... 阅读全文
posted @ 2013-07-24 20:27 白光 阅读(837) 评论(12) 推荐(1) 编辑
摘要: 我们在用Visual Studio进行开发的时候,经常会跟dll或者exe的文件打交道,懂一点计算机的同学会想,dll文件里面存的应该是二进制吧,它不能直接运行,不过可以被exe的程序调用。懂点.Net的同学:哦,原来dll文件中存放的是经过编译后的MSIL,运行时,它会由一个叫JIT的编译器再编译为适合本地运行的二进制,供程序运行。那么今天,作为懂得不是一点点的我们,就应该了解这里面到底是些什么东西,这样会更好的理解.Net框架。已经不记得是在哪里记下的哪位大神笔记,贴在自家墙上的,如今拿出来晒晒,只为跟众多园友们分享分享!如图所示: 在.Net Frame... 阅读全文
posted @ 2013-02-03 15:25 白光 阅读(4871) 评论(10) 推荐(7) 编辑
摘要: 2012年9月,正式从事软件开发工作,这是从学校出来得第一份工作,很欣慰,两年的培训学习,从不会打字的电脑新手到一位合格的程序员,时间见证了我的努力。回想过往四年,高中毕业后的我,做过饭店传菜员,做过纺织机修工,沉迷过网游,也憧憬过未来,这些经历,让我更加相信,命运,是我们一针一线亲手编织的。 初入职场,我跟很多同学一样,被一种孤独感笼罩着,周围环绕着陌生的事物与陌生的眼光,跟学生时代的校园完全不一样。网上有很多前辈们的淳淳教导,新入职场哪些能做,或不能做,给了我很多帮助和信心。 说起来,还算幸运,同事们有看过我的简历,知道我在学校学习的是.Net平台上的技术,有web方向的开发经验,... 阅读全文
posted @ 2013-02-03 02:20 白光 阅读(3356) 评论(34) 推荐(1) 编辑
摘要: 在我们的工作和学习当中,经常会遇到中小型项目,这些项目除了业务上的区别较大外,对于底层和数据访问,其实都差不多。记得以前做项目时,每次都要重复的写底层操作数据库的代码,不仅浪费时间,也无太大意思,后来接触到了Entity Framework,Linq等技术,发现底层原来可以这么简单,既缩短了大量的开发时间,又提高了代码质量。 今天就向大家演示两种搭建底层和技术,在此,也给自己做一个笔记。 CodeFirst,用中文说是代码优先,此技术可以让我们先写代码,然后由Entity Framework根据我们的代码建立数据库。一开始听上去很神奇,接下来,我将用图文并茂的方式,演示出来: 用学生的... 阅读全文
posted @ 2012-10-20 16:37 白光 阅读(13293) 评论(10) 推荐(2) 编辑
摘要: 实现了顺序存储结构的二叉树和队列的基本操作,以下是相关函数及类型的声明#include <stdio.h>#include <stdlib.h>#include <string.h>#include <malloc.h> #include <math.h>#define TRUE 1#define FALSE 0#define OK 1#define ERROR 0#define MAX_TREE_SIZE 100#define MAX_QUEUE_SIZE 5#define Nil ' ' typedef char 阅读全文
posted @ 2012-08-12 04:00 白光 阅读(11620) 评论(1) 推荐(0) 编辑
摘要: 1 #include <stdio.h> 2 #include <malloc.h> 3 #define LEN sizeof(struct student) 4 5 /*----------------数据定义----------------------*/ 6 7 //定义一个学生信息的结构体,包括学号,姓名和结构体类型的指针 8 struct student 9 { 10 long num; //学号 11 char name[128]; //姓名 12 struct studen... 阅读全文
posted @ 2012-08-05 16:12 白光 阅读(62756) 评论(6) 推荐(3) 编辑
摘要: 在上一篇博文当中,我们例举了一个机房自动化系统的逻辑控制程序,其中用到了Lambda表达式,因此方便了我们程序功能的实现.然而,我们不能仅仅为实现功能,完成任务而奋斗,应该知其然,知其所以然,也就是说,知道了Lambda表达式能够带来这样的方便,也应该知道为什么能够带来这样的方便,接下来,就跟大家一起来一次小小的探索之旅吧.为了弄清为什么,我们用Reflector反编译一下源程序, static void Main(string[] args) { Monitor.OpenEventHandler OnOpen;//定义一个委托变量 ... 阅读全文
posted @ 2012-05-17 22:23 白光 阅读(2392) 评论(7) 推荐(3) 编辑
摘要: 在上一篇博文发布之后,得到广大博友们的关注,本人甚感欣慰,对于博友们对我的鼓励和提出的一些建议,对我来说,都是很宝贵的,借用老外的一句话,“It means much to me”,呵呵,这篇文章,我们来谈谈lambda表达式给日常委托的使用中带来的便利。 假如,要给公司的机房重地,安装一个自动化系统,硬件呢肯定不是我们所关心的,我们任务是要实现逻辑控制,也就是说,当该系统启动后,我们要执行相应的操作,简单点吧,比如打开电源,打开服务器和服务,这一过程,是我们需要执行的,那么,我们可以利用C#的委托来实现其基本逻辑,下面以控制台程序为例: 首先,需要定义一个接口,该接口抽象出在机房能执... 阅读全文
posted @ 2012-05-17 18:00 白光 阅读(3600) 评论(5) 推荐(4) 编辑
摘要: 初学.Net的同学们,我们常常会有这样一种感觉,对于一项技术,或者一个方法,我们都知道它很有用,可就是用不着,或者说,并不知道什么地方能用的上,所以,技术学会了,却用不上,也就无法深入。时间一长,就容易忘,结果就是,这个我学过,那个我也懂,可是我就不会用。。。 这博客园的第一篇博文,就从C#委托开始吧。 前段时间,做了一个局域网通讯工具的项目,在其中涉及到修改个人资料的模块上,遇到了一个有些意思的问题,就是,当用户在修改资料的窗体修改完个人头像的时候,如何让主窗体也随之更新头像,这里,我想到几种方法,第一,用多线程,第二,C#的Timer定时器,这两种方法,其实都是让程序每隔一定的时间... 阅读全文
posted @ 2012-05-13 13:07 白光 阅读(6657) 评论(29) 推荐(19) 编辑