1.常量和变量 Swift语言中是用let来定义常量,并且要初始化.var来定义变量,在let或者var后面申明类型,冒号+空格,然后再加上类型名称. 2.optional(可选)变量 可选变量用于处理值缺失的情况,有点类似于OC中的nil,可以用于任何类型上,不仅仅是类,不过更加安全.Swift是类型安全的一门语言,可以很少申明类型. 附:Swift和Objective-C中nil的区别 1)OC中,nil是一个指向不存在对象的指针: 2)Swift中,nil不是指针,它是一个确定的值,用于表…
语法方面: 区别就是:没有区别!!! “*”号是通配符: “*”号是通配符 “*”号是通配符 使用"*"号和使用其他数字和任意非字段字符在使用方面没有任何语法错误; 至于效率方面是否有区别,尚未研究.以下摘自网络 count 解释 count(*) 返回表中所有存在行的总数包括null;处理count(*)的时候只需要计算一下行数就行了,不用去读取里面数据列的数据. count(1) 返回的是去除null以外的所有行的总数,有默认值的也会被记录;必须读取该colum的每一行的值,然后确…
php语法同java语法的基本区别(实例项目需求,php才能熟) 一.总结 看下面 二.PHP基本语法以及和Java的区别 .表示字符串相加 ->同Java中的. $作为变量的前缀,除此之外,变量名称定义规则同Java 参数传递和方法返回时传引用需要加前缀& 示例代码: function f(&$a){}//方法参数值以引用形式传入 functioin & f(){}//方法返回值以引用形式返回 Java中反射调用方法对应PHP中的可变函数:var a="a&quo…
Delphi Create(Application) 和 Create(nil) 的区别: 例如: Form1:=TForm1.Create(Application); Form1:=TForm1.Create(nil): Create(Application)  :程序创建时会将对象添加到属主对象的组件(TComponent)列表中,当属主对象销毁时首先查看并销毁属主对象的从属对象,即当Application对象释放时会自动释放从属对象. 这里又要衍生一个概念及应用程序对象即Applicati…
我晕,Delphi 7 以后增加了这么多有用的语法,我都不知道.真是越学越觉得自己浅薄,自己所作的Delphi项目所用的知识还不够Delphi知识储备体系的十分之一,更别说Delphi还在继续发展. ----------------------------------------------------------------------- 自Delphi 7以来的Delphi 2009测试版新语法特性                 by eGust======================…
一.Delphi永远没办法在栈上创建一个对象 下面是一段常见的的Delphi代码,在过程的开头声明本过程所需要的全部局部变量: procedure Foo;var obj: TObject; //这句容易被C++程序员误会.begin ...end; C++程序员会以为obj这个变量就是TObject对象实例本身,会以为这一句是在栈上声明并构造了TObject类的一个对象实例,他们会与下面的C++代码混淆: void Foo() { CObject obj; //这一句的确在栈上构造了CObje…
目录 Delphi永远没办法在栈上创建一个对象 Delphi的构造函数更象是个类方法(静态成员函数) Delphi的析构函数中可以调用纯虚方法 Delphi在构造对象时自动将成员变量清零 Delphi构造函数中抛出异常会自动先调用析构函数 Delphi简化了COM接口的AddRef.Release和QueryInterface 一.Delphi永远没办法在栈上创建一个对象 下面是一段常见的的Delphi代码,在过程的开头声明本过程所需要的全部局部变量: procedure Foo;varobj:…
前话:  其实大家要学会看源码, 我接下来要说的这些东东,与其等别人讲,还不如自己搞几个代码试一下,印象还深刻点 TThread.Queue和TThread.Synchronize的区别,效果上:二者的作用都是让业务代码在主线程中执行,差别: Synchronize是阻塞,Queue是非阻塞代码上 两个方法最终都是调用的 class procedure TThread.Synchronize(ASyncRec: PSynchronizeRecord; QueueEvent: Boolean =…
Record 和Packed Record 第一种不带packed关键字的结构体表明编译器编译时要求进行字对齐,而第二种带packed关键字的结构体表明编译器编译该结构体时不需要进行字对齐,这种方式对结构体中的字段访问会比第一种方式慢!但是更节约空间.有Packed 的占用内存小,但是速度慢一点.没Packed 的占用内存大,但是速度快一点 比如: TA   =   record a:   AnsiChar; b:   Integer; end; 和 TB   =   packed   reco…
在有多个Form窗体时可以体现出来.用close是只关闭本窗体,而用Application.terminate是关闭整个程序,包括所有窗体.(1)当Close是一个主窗体时,程序会退出.Close会发生FormClose事件,FormCloseQuery事件.close,只是针对窗体.主窗体close以后程序就Application.Terminate了.子窗体close以后.没释放,还可以Show出来.也是说主窗口的Close方法其实也是调用Application的Terminate来终止程序…