我希望在调试应用程序时能够显示TStringList的全部内容,但实际上只能看到指针,Flist仅显示地址。
我希望在调试应用程序时能够显示TStringList的全部内容,但实际上只能看到指针,Flist仅显示地址。
我现在使用可视化工具,因为我有D2010。以前我使用一个称为CArray的函数,它会返回一个字符串数组。如果我在观察窗口中添加CArray(MyStringList),我就能够检查字符串列表的内容。我曾经被雇用来编写VB6代码,我有点喜欢各种转换为有用类型的'C'函数,比如将字符串列表转换为数组和将ClientDataset字段转换为数组都在调试时非常有用。
function CArray(List: TStrings): TStrArray; Overload;
var i,
iCount: Integer;
begin
iCount := List.Count;
SetLength(Result, iCount);
for i := 0 to Pred(iCount) do Result[i] := List[i];
end;
TStrings
可视化器对 TStrings 内容有一些大小限制。 - Remy Lebeau我的建议:
您可以评估表达式list_instance_variable.SaveToFile('temp_file_name.txt')
,然后在任何编辑器中检查文件的内容。
要做到这一点,您必须在代码中的任何位置使用此函数并关闭优化(至少在Delphi 7中),否则SaveToFile
的目标代码将被链接器删除。