下面的函数怎样声明?
输入一串字符,返回一个字符串数组?

解决方案 »

  1.   

    function  xxx(S:String):TStrings
      

  2.   

    function  XXX(S1:String,S2:Tstrings):TStrings;
    这样声明,为什么出错,我想在调用函数前就建立S2对象
      

  3.   

    procedure Name(S:string;var Value:TStringList);
      

  4.   

    如果像刀未锋函数的样子,那样的话,在函数里是不是要建立Tstrings对象,现在我就想在调用函数前就建立,作为参数
      

  5.   

    To:菩萨,TStringList和TStrings有什么区别?
      

  6.   

    var
      a:TStrings;
      b:TStringlist;
    begin
      a:=TStringList.create;
      b:=TSTringlist.Create;
      //a和b现在都一样都是TStinglist.其各种属性和方法很好使用  a.free;
      b.free;
    end;
      

  7.   

    过程参数使用var那传递的就是指针了。会改变传入的变量的值的!!!
      

  8.   

    其实用TStrings定义没问题,不过你不可以直接生成TStrings的实例,他是一个虚类,可以用它的后代,就像TStringList类
      

  9.   

    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;type
      TForm1 = class(TForm)
        Button1: TButton;
        Procedure  XXX(S:TStrings);
        procedure Button1Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}
    Procedure TForm1.XXX(S:TStrings) ;
    begin
       S.Add('yyyy');
    end;procedure TForm1.Button1Click(Sender: TObject);
    var
      M:TStrings;
    begin
    M:=TstringList.Create;
    try
      M.Add('you are my');
      XXX(M);
      Showmessage(M.Text);
    finally
      M.Free
     end;
    end;end.