gpt4 book ai didi

delphi - 如何重现此代码完成错误?

转载 作者:行者123 更新时间:2023-12-02 08:38:01 25 4
gpt4 key购买 nike

我在 Delphi XE2(更新 4 修补程序 1)上遇到了一个错误,该错误在我工作的遗留项目中多次重现(它从 D6 发展到 D7、D2006,最后是 XE2),但我不知道如何解决在较小的项目中触发它。

最近一次,它在为应用程序上的“隐藏弹出窗口”创建事件处理程序时触发。当我单击菜单选项来创建 Click 处理程序时,就会发生这种情况。

pprocedure TMainForm.Blablabla1Click(Sender: TObject);
begin

end;

rocedure TMainForm.FormActivate(Sender: TObject);

您可以看到 IDE 在下一个方法的声明中插入了新代码...但这还不是全部。几乎所有时候,在 DPR 上,代码也会被破坏:

  AApplication.CreateForm(TDM_DataAcc, DM_DataAcc);
AApplication.CreateForm(TMainForm, MainForm);
pplication.CreateForm(Tfrm_login, frm_login);
f frm_Login.CanLogin = mrOK then Application.Run

(几乎就是这样,我不记得第三个Application.CreateForm是否得到了它的''A'剪辑,我确定另一个加倍了并且IF得到了它的''A' ’“我”被剪掉了)。

在 QualityCentral 上追踪没有帮助(什么也没找到)。有时,在类完成 (Ctrl-SHIft-C) 上也会发生这种情况。

有人知道是什么触发了该错误,所以我可以创建一个新应用程序并将其发送到 Embarcadero?

最佳答案

类似的行为表明 IDE 错误地计算了文件中的字符。有一些开发人员可能没有预料到的“文件异常”,这可能会导致字符索引计算错误。

  • 检查文件中是否存在异常行结尾。例如,缺少回车符的行将在编辑器中正确显示,但可能会导致程序中其他位置的行号不正确。

  • 不间断空格是另一种正常显示的字符,甚至可能正确解析,但在字符的“​​正常”版本(常规空格)以 UTF-8 表示时占用多个字节只占用一个。如果您从 Web 浏览器复制代码,有时会获得此类字符。

  • UTF-8 或 UTF-16 源文件的字节顺序标记不正确也可能会导致问题。

通常,在记事本或十六进制编辑器中打开源文件将帮助您识别这些问题。

关于delphi - 如何重现此代码完成错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14243629/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com