Форум: "Начинающим";
Текущий архив: 2015.10.04;
Скачать: [xml.tar.bz2];
ВнизВопрос по работе с Move Найти похожие ветки
← →
Walter White (2014-05-15 11:23) [0]Нужно ли Buf в Move приводить к PChar?
var
S1, S2: string;
Buf: Pointer;
begin
S1 := "test";
GetMem(Buf, 255);
try
Move(PChar(S1)^, PChar(Buf)^, 255); // <- PChar(Buf)^ ?
S2 := PChar(Buf);
finally
FreeMem(Buf);
end;
или можно:
Move(PChar(S1)^, Buf^, 255);
← →
RWolf © (2014-05-15 11:30) [1]
S2 := S1;
UniqueString(S2);
не?
← →
brother © (2014-05-15 11:38) [2]чего сделать то хотите?
← →
Walter White (2014-05-15 12:15) [3]
> RWolf © (15.05.14 11:30) [1]
> S2 := S1;
> UniqueString(S2);
> не?
>
> brother © (15.05.14 11:38) [2]
> чего сделать то хотите?
пишу наследника TDataSet, в нем перегружаю метод GetFieldData(Field: TField; Buffer: Pointer): Boolean;
для FieldType = ftString нужно в Buffer записать строку. Как это правильно сделать? Делаю так:Move(PChar(SL[Field.Index])^, PChar(string(Buffer))^, 255);
Работает, но есть сомнения.
← →
MBo © (2014-05-15 13:22) [4]Промежуточное приведение к string лишнее.
← →
Cobalt © (2014-05-16 11:20) [5]Не верьте коду, найденному "в интернетах" - там 90% говнокод.
Пока не разъясните, зачем нужно приведение к PChar - не делайте так.
← →
Dimka Maslov © (2014-05-16 16:33) [6]А ещё почему именно 255?
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2015.10.04;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.001 c