3

每当我在 Delphi 调试器中检查或观察表达式时,值 '()' 就会不断出现。

这是什么意思 ?如果它代表某种对象,我如何可视化该对象的状态?

4

1 回答 1

4

它可能意味着两种不同的东西,具体取决于您查看的是数组还是对象。

对于数组,这意味着您有一个包含 0 个元素的数组(通常是动态数组)。

对于一个对象,它有点复杂。这意味着您正在检查一个声明为不包含任何数据成员的类型的对象。如果您正在查看在代码中声明的变量TObject(例如Sender: TObject事件处理程序中的 a ),则实际类型几乎可以肯定不是TObject,但调试器会将其评估为声明为的类型。

要获取有关对象的实际数据,请执行以下操作:

  • 拉起评估/修改 (Ctrl-F7)。
  • 评估对象的真实类型。( Sender.classtype)
  • 评估对象,转换为它的真实类型。( TMyObject(Sender))。这将告诉您对象实际包含的内容。
于 2013-09-30T14:58:53.083 回答