易截截图软件、单文件、免安装、纯绿色、仅160KB

C#学习及与delphi的比较(一)

刚开始很不习惯c#的风格,哎,先入为主啊,delphi习惯了,{}代替begin/end太扎眼。
属性方法的宣告和代码在一起,没有像delphi分interface/implementation,感觉太乱,都不知道一个class到底有几个方法。
每个属性和方法前面都要单独写private/protected/public,老天,c#是delphi之父设计的揶,怎么不学delphi写一个就行呢?绝对降低生产率。
c#号称没有全局变量、全局函数了,有人大家赞赏,说可以减少耦合,刚很好奇,看了才明白,老天,都放到class里面去了,那这个class算不算全局的??类似delphi的class method,不需要创建instance就可以调用。
跟c一样,函数调用,即使没有参数,也要加一对括号,烦,有时候不知道某个东西是属性还是方法,VS的code insight选择方法后也不自动加上一对括号,像ToString(),我总是忘掉。
没有了单元的概念,不存在一个cs文件引用另一个cs文件的用法,在project中的文件就可以互相使用里面的class。
assembly中没有如delphi的单元initialization/finalization初始化功能,很不方便,只能通过static property来lazy创建。
form有controls属性,列出第一层控件,与delphi一样;但是没有components属性,不知道如何列出那些不可视元件,但是在form的后代,如form1,form2,单独实现了一个private IContainer components属性,作用与delphi得Components一样。


相关文档:

Delphi多线程学习(4):临界区

 临界区是一段代码,一次只允许一个线程执行这段代码。当把一段代码放入一个临界区, 线程执行到临界区时就独占了, 其他线程如果要访问这段代码,一定要等前一个访问的线程结束才行。借用前面的比喻比作图书馆,临界区就像把图书馆设计成只有一个位置(现实中好像不太合理,不管了,反正这么个意思),当有一个人正在办 ......

Delphi多线程学习(6):信号量Semaphore

信号量是建立在互斥量的基础之上,同时加入重要特性:提供了资源计数功能,因此预定义数量的线程同时可以进入同步的代码块中。
      信号量是维护0到指定最大值之间的计数器的同步对象,当线程完成一次信号量的等待时,计数器自减1,当线程释放信号量对象时,计数器自增1。
    ......

一个C# xml 序列化错误

一个C# xml 序列化错误
 
事发现场:
xml序列化的数据中存储的节点数据是
   <Module>536870912</Module>  (xml文件中)
对应的类属性是
    public short Module { get; set; }  (C#类中)
 
序列化的代码:
public static FMDSTimeSeriesDefinitio ......

Delphi中的Record


在Delphi中的Record类型中,与之C语言对应的即是结构体类型(struct
),也可能是为了符合C语言或C++程序员的习惯,对于它在Delphi中的应用存在的一些问题进行初步的说明。在Delphi中的记录体类型有两种方式定义
Type
    RecTest = record (packed
)
      ID :integer; ......

Delphi主窗口任务栏菜单的问题

Delphi的VCL框架在创建应用时TApplication是一个自动创建的隐藏窗口,其它创建的窗口是自动以该窗口为窗口,这就导致创始的主窗口在任务栏的系统菜单只有三项,只要在主窗口的Create事件中将系统菜单用Application的系统菜单替换,并将SysCommand消息转发到主窗口就正常了。
unit Unit1;
interface
uses
  Windows ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号