Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: 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 вся ветка

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.048 c
15-1341997928
Дмитрий С
2012-07-11 13:12
2013.03.22
Наушники от которых не болят уши.


2-1333098565
leklerk
2012-03-30 13:09
2013.03.22
Fields Editor в ADODataSet


2-1334672711
новичок2012
2012-04-17 18:25
2013.03.22
Ссылка на контролы класса TCombobox и TEdit


2-1336127281
__QWERTY
2012-05-04 14:28
2013.03.22
как правильно очистить TList ы, чтобы не было утечек памяти


6-1259931784
Kanaris
2009-12-04 16:03
2013.03.22
Как реализовать "ретранслятор" запросов через сокеты?