Вниз
Скачать: CL | DM;

Проблема с вводом-выводом данных через параметры процедуры   Найти похожие ветки 

← →
Pcrepair ©   (2012-06-25 22:40) [0]

Добрый день
В МЕМО1 вводятся строки, после обработки выводятся в МЕМО2(для наглядности работы тестовой процедуры)

Версия1, работает:

procedure TForm1.Button1Click(Sender: TObject);
var DataIn,DataOut: TStringList;
begin
  DataIn := TStringList.Create;
  DataOut := TStringList.Create;
  DataIn.AddStrings(Memo1.Lines);
        CopyStrings(DataIn, DataOut);
  Memo2.Text := DataOut.Text;
  DataIn.Free;
  DataOut.Free;
end;

procedure TForm1.CopyStrings(var T1,T2:TStringList);
var i:integer; T:TStringList;
begin
  T := TStringList.Create;
   T.Delimiter := " ";
    T.BeginUpdate;
      try
        For i := 0 to Min(T1.Count, 3)-1  do
          T.Add(T1.Strings[i]);
          T2.Add(T.DelimitedText);
      finally
    T.EndUpdate;
  end;
 T.Free;
end;


Версия 2. Не работает. Не возвращает в Data: string результат работы процедуры

procedure TForm1.Button1Click(Sender: TObject);
var DataIn: TStringList; Data: string;
begin
  DataIn := TStringList.Create;
  DataIn.AddStrings(Memo1.Lines);
     CopyStrings(DataIn, Data);
  Memo2.Text := Data;  (*вот тут ничего не выводит*)
  DataIn.Free;
end;

procedure TForm1.CopyStrings(var T:TStringList; S:string);
var i:integer; T1:TStringList;
begin
  T1 := TStringList.Create; (*буферная ПЕРЕМ*)
    T1.Delimiter := " "; (*уст. тип разделителя*)
       For i := 0 to Min(T.Count, 3)-1  do
          T1.Add(T.Strings[i]); (*ну тут все понятно*)
          S := T1.DelimitedText; (*объединяем три строки в одну*)
    (*  Memo2.Text := S; вот тут результат можно вывести, если в обработчике закомментировать
     Memo2.Text := Data;*)
   T1.Free;
end;


Вопрос: почему в Версии2 не возвращается результат. вся разница в В1 и В2 только в типе переменных на выходе


← →
Sha ©   (2012-06-25 23:00) [1]

мамочки
перед s поставь var
добрыми намерениями


← →
Pcrepair ©   (2012-06-25 23:05) [2]

вот оно чего
каждая переменная в параметрах определяется отдельно



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.046 c
2-1330496040
Cobalt
2012-02-29 10:14
2013.03.22
Char в D2010


15-1350304912
8903765 0706
2012-10-15 16:41
2013.03.22
Внимание! Ищут машину, которая сбила 15.09 ребенка на стоянке


2-1338573991
fShtein
2012-06-01 22:06
2013.03.22
EhLib компонент


2-1338045622
knopkodaf
2012-05-26 19:20
2013.03.22
Рабата с IDHTTP


2-1331979813
>|<
2012-03-17 14:23
2013.03.22
DrawFocusRect




   Наверх