2013年11月12日
摘要: 在C#中字段和变量还是有点区别的,个人理解是如下,作为参考: 字段是属于一个类的,在类中定义的,当然不是在类中的某个方法或是属性中,你可以使用this.字段/属性/方法。 变量属于一个语句块或是函数,当此块结束后就释放了,周期结束。 阅读全文
posted @ 2013-11-12 01:10 ForeverX 阅读(323) 评论(0) 推荐(0) 编辑
  2013年11月9日
摘要: 1、static 表示被修饰的对象的生命周期与当前的应用程序域相同,因此可以在多个实例中共享;2、const:声明常量的一种方式,必须是在声明时就要初始化值,一旦设定就不能修改,是编译时常量。就时说你引用const字段,在编译时就可以替换成相应的常量值。如果要把只读字段设置为静态,就必须显示声明他;3、readonly:声明常量的另一种方式在声明时可以初始化,同时在构造函数中也可以初始化。但是一旦构造函数运行完毕,其就不能再修改了,具有更大的灵活性,其值是在运行时确定的;所以相比const来讲,readonly具有更大的灵活性,更多的情况下可以选择readonly来使用;4、#define n 阅读全文
posted @ 2013-11-09 21:09 ForeverX 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 结构体和类具有相同的结构,但是他们还是有很多的区别的:1、结构中无限定修饰符的时候,默认为共有成员,但是在类中是私有成员;2、结构是值类型,但是类是属于引用类型;3、结构不容许继承,但是类可以继承;4、结构构造中编译器总是提供一个无参数的构造函数,不容许替换,所以在结构体中直容许提供有参数构造函数,提供字段的初始化值也不能绕过默认构造函数;5、结构主要用于小的数据结构(优点:内联或保存在栈中,分配内存快,释放快; 缺点:内容被复制,性能损失。所以把结构作为参数递给方法时,应把他作为ref参数传递,避免性能损失),类使用引用,,则只复制引用;6、默认构造函数把数值字段都初始化为0,把引用类型字段 阅读全文
posted @ 2013-11-09 20:26 ForeverX 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 参数传递:在C#中使用方法时,但是按照定义的顺序传递给方法,但是参数容许按任意顺序传递:string FullName(string FirstName, string LastName){ return FirstName + " " + LastName;}//调用方法1:FullName("John", "Doe");//调用方法2:FullName(LastName: "John", LastName: "Doe");可选参数:条件:1、必须可选参数提供默认值;2、可选参数不必须是最后一 阅读全文
posted @ 2013-11-09 16:28 ForeverX 阅读(450) 评论(0) 推荐(0) 编辑
摘要: ref参数和out参数实际上都是将值类型转化为引用类型。 但是他们还有区别: 在使用ref参数时,和其他方法传递参数一样,必须进行初始化,尽管在方法中会将其对应的值改变。但是在out参数使用的过程中是不需要去初始化的,更侧重于输出,方法对该变量进行的任何修改都会被保留下来。ref参数:static void SomeFunction(ref int i) { i = 10; } public static int Main() { int i = 20; //初始化 SomeFunction(... 阅读全文
posted @ 2013-11-09 16:09 ForeverX 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 字段和属性是C#面向对象模式中的两个概念,都属于类的成员。 字段(field) 用来存储数值或对象的真正实体,简单说是私有变量(不一定是私有...);属性(property) 对字段的封装(也不一定- -) 有get段落和set段落,通常是公开的 ,get段和set段执行过程都是轻量的。 说不一定是因为通常它们是这么用的,但是在不同设计模式和上下文场合 ,字段的私有会造成取值赋值的效率降低 比如你不得不对一个占用64字节的结构体频繁取值赋值 就用公开字段好了... 属性是个非常奇妙的东西 它包含着写段落和读段落所以又叫读写器正常的意义是field的wapper 因为你可以通过只写ge... 阅读全文
posted @ 2013-11-09 15:33 ForeverX 阅读(602) 评论(0) 推荐(0) 编辑
  2013年10月9日
摘要: 面对多窗口的调用的时候,我们往往不喜欢窗口之间的随意切换,那样我们还有花费时间寻找我们要用的窗口,而且,一但出现问题,窗口的顺序也有可能被再次打乱,很是不顺手,那么我们怎么办呢?我们可以将show方法转化为showdialog方法,顾名思义,showdialog是一个进行路经绑定的show方法,他是不可以自由切换的,换言之,就是,当你没有关闭你当前页的前提下,你是无法关闭该页面后面的任一页面的,它是当前唯一(路经打开)为true的。而show方法由于未进行绑定,它所显示的各个窗口、对话框是可以相互切换,而不需要关闭当前窗口、对话框。但是他由于未进行绑定,所以每个由show方法打开的窗口的顺.. 阅读全文
posted @ 2013-10-09 02:36 ForeverX 阅读(3168) 评论(0) 推荐(0) 编辑
  2013年10月7日
摘要: 2013-10-07 为实现某种功能而假设的函数称作虚函数。虚函数只能是一个成员函数,但不能是静态成员函数。 C++中的虚函数主要是实现了多态机制。关于多态,主要是使用父类型的指针去指向子类型的实例,然后通过父类的指针去调用子类的函数。但是任何妄图使用父类指针想调用子类中的未覆盖父类的成员函数的行为都会被编译器视为非法的,无法通过的。 使用虚函数保证了在通过一个基类类型的指针(包括引用)调用一个虚函数时,C++系统对该调用进行动态联编。但是,在通过以对象访问一虚函数时,则使用静态联编。如果一个子类中的函数的参数个数,类型以及其返回值类型都和基类中的虚函数的一样,那么子类中的这个函数也是虚... 阅读全文
posted @ 2013-10-07 15:33 ForeverX 阅读(195) 评论(0) 推荐(0) 编辑
  2013年9月28日
摘要: 最近学习的过程中都会遇到一些window下的变量名问题,所以现在开始慢慢地将这些内容全部都积累起来,以备后用,也希望能给那些看到这边博客的技术人员提供帮助。本人属于初级阶段,还望多多指导。 在window中:LPTSTR与char*等价,表示普通字符/字符串变量,指向字符/字符串的指针。 LP:长指针(long pointer)。T:win32环境中有一个_T宏,用来标识字符是否采用Unicode编码(两字节表示一个字符),若程序中定义了Unicode,该字符/字符串被作为Unicode字符串,否则就是标准的ANSI(单字节表示一个字符)字符串。 阅读全文
posted @ 2013-09-28 00:01 ForeverX 阅读(116) 评论(0) 推荐(0) 编辑