- 博客(6)
- 资源 (3)
- 收藏
- 关注
转载 event与delegate的区别
首先,通过加入event关键字,在编译的时候编译器会自动针对事件生成一个私有的字段(与此事件相关的委托),以及两个访问器方法,即add访问器方法以及remove访问器方法,用于对事件的注册及注销(对事件使用+=及-=操作时就是调用的这两个方法)。我想你们的问题主要是,实际上声明一个委托类型的字段也可以实现这些功能。实际上之所以采用event而不直接采用委托,实际上还是为了封装。可以设想一下
2012-03-25 12:15:46 6791
翻译 关于C#[StructLayout(LayoutKind.Sequential)]的问题
结构体是由若干成员组成的.布局有两种 1.Sequential,顺序布局,比如 struct S1 { int a; int b;} 那么默认情况下在内存里是先排a,再排b也就是如果能取到a的地址,和b的地址, 则相差一个int类
2012-03-23 15:12:34 1737
原创 关于ListView::ColumnWidthChanging没响应问题的研究
ColumnWidthChanging 算是一个bug吧起初我就纳闷,为什么同一个项目在笔记本上运行的好好的,跑到台式机上就无效了呢?原本是想利用这个事件来控制列表视控件,以固定某些列的宽度,在网上找资料,纷纷提出只要使得ColumnWidthChangingEventArgs e 中的e.Cancel = true;就可以了,查看msdn的说明,确实也是这么个意思,试了一下,竟然不行!愤
2012-03-22 10:57:20 2344 1
转载 进程地址空间
前面讲“库”文件时说到:动态库的“函数”,有“函数地址”。其实不仅函数有地址,程序中的各种数据,都有地址。5.4.1.什么叫进程当程序安静地躺在硬盘上时,它是一个“文件”,非要给点区别的话,它是一个“可执行文件”;而当程序运行起来,它就从硬盘上一跃进入内存,这时它就被叫做一个“进程/process”了。请同时按下Ctrl + Alt + Del 键,或者在任务栏空白处点右键,弹出菜单中
2012-03-06 23:44:34 741
转载 堆(Heap)栈(Stack)
堆(Heap)栈(Stack)1、内存分配方面: 堆:一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式是类似于链表。可能用到的关键字如下:new、malloc、delete、free等等。 栈:由编译器(Compiler)自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、申请方
2012-03-06 23:13:11 664
转载 rfc894和rfc1042(ieee802)封装格式
以太网协议实现RFC894规定的功能,能发送和接收采用RFC894封装格式的帧,同时也能够兼容与RFC894混合的RFC1042(IEEE802)封装格式的帧。 Ethernet: 1980年,数字设备公司(DEC)、Intel公司、施乐(Xerox)公司推出了DIX V1.0标准。1982年又推出了DIX V2.0标准,也就是现在通常所说的Ethernet II, 它采用了C
2012-03-06 08:19:23 8552
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人