Subject:
自动实例化的功能
[Print This Page]
Author:
西方失败
Time:
2026-10-7 13:37
Subject:
自动实例化的功能
由于Delphi语言的特点不能像其他语言在定义的时候可以加个New完成实例化
只能在Begin后面实例化,这样就得再写一次
比如
var
lst:Tlist<string>;
sb: TStringBuilder;
hs:THashset;
......
Begin
lst := Tlist<string>.Create;
sb := TStringBuilder.Create;
hs:= THashset<string>.Create;
......
End;
不知道cnpack有没有这种自动实例化的功能,有的话就太省事了
在Begin后面自动写上即可,没有的话老大觉得有价值加个吗,谢谢!
[
本帖最后由 西方失败 于 2026-10-7 13:47 编辑
]
Author:
小帆
Time:
2026-10-7 15:17
用内联变量,直接搞:
Begin
var lst := Tlist<string>.Create;
var sb := TStringBuilder.Create;
var hs := THashset<string>.Create;
End;
只是要注意作用区间。
Author:
西方失败
Time:
2026-10-7 15:54
确实目前只能这么搞 只不过总觉得有点别扭
Author:
Passion
Time:
2026-10-7 16:05
可以看看我们脚本专家中的GenVarObjCodes.pas例子,在安装目录的PSDemo目录下。
本脚本能够根据 var 区声明的对象变量生成对应的创建释放代码块。
Author:
西方失败
Time:
2026-10-11 17:42
厉害,确实出来了,但是变量成乱码了怎么回事呢.
cw版本 1.8.2.1374_Preview Build 2026.10.08
Image Attachment:
20261011-1.png
(2026-10-11 17:43, 42.99 K) / Download count 1
http://bbs.cnpack.org/attachment.php?aid=1219
Author:
Passion
Time:
2026-10-11 21:37
是D几?
Author:
Passion
Time:
2026-10-11 22:14
知道了,是ExtractStrings函数在Unicode版Delphi的脚本引擎中有Bug导致了乱码,我想想如何修。
Author:
西方失败
Time:
2026-10-11 22:37
哦哦 还不知道中文有没问题
Welcome to CnPack Forum (http://bbs.cnpack.org/)
Powered by Discuz! 5.0.0