开始,很爽,以前delphi7积累的东西都能用
但是后来发现在d8中主推的是windows forms application,vcl.net居然只有两个demo,而且数据库操作还用的是bde,可能vcl form application中根本就不能使用他的ado控件tadonetconntor,borland是一代不如一代了
有不少bug的说。而且很占内存啊,我打开所有的vcl目录下的源代码后用了400多m的内
存!!主要都是因为内嵌的建模功能占内存,但是好象功能还不很完善,至少我不太会用。
pascal语言本身的改变实在太多了!!!而且居然支持操作符重载!!个人不太喜欢,以为
用处不是很大。还有静态成员变量的支持,这个不错。支持嵌套类型定义,即
type
A = class
private
type
b = class
...
end;
public
...
end;
这个也还不错。记录和联合类型都得到了加强。还有一些不错的改进。但是总的来说比较仓
促,文档的说明也有问题,和实际不一致。比如类属性的语法应该是
class property A:type read reader write writer;
但是文档上居然说是
class var
property A:....
文档上的例子根本编译不过!!
以前用来委托实现接口的implements语法现在好象也不能用了,但是文档中还有它的说明和
例子。
在语法上还引入了一个class helper,主要是为了将delphi运行库和.net整合起来,但是给
人的感觉非常奇怪,而且有被滥用的可能。
和以前的代码的兼容性上是比较差,除了控件可能不能用以外,使用了指针的代码都比较难
以通过。主要问题在于使用了指针的代码要标记为不安全的代码,而且是在过程的级别上进
行,修改起来十分麻烦。还有类型转换的问题,现在的类型转换的含义和以前的不太一样
了,指针类型与非指针类型间的转换不被允许(可以用很肮脏的手法实现),还有很多转型
调用了转型操作符,有些还涉及到装箱和拆箱操作。可能编译通过后运行时蹦出几个
runtime error。这一点对像我这样把pascal当c用,疯狂强制转型的人来说是个不小的打击。