function GetHRef(s: string): TStrings;
begin
Result := TStringList.Create;
Result.Add('ab'); //<----- 出错在这里:Access violation at address XXXXXX
Result.Add('bcd');
end;
begin
Result := TStringList.Create;
Result.Add('ab'); //<----- 出错在这里:Access violation at address XXXXXX
Result.Add('bcd');
end;
procedure TForm1.Button3Click(Sender: TObject);
var
sl: TStrings;
begin
sl:= TStringList.Create; //这一句要去掉,不然会有内存泄漏
try
写
Result := TStringList.Create;
就可以了么?
sl:= TStringList.Create;
S1声明为TStrings,但却等于TStringList
function GetHRef(s: string;var sl:TStringList);这种方法比较好