Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Записать Pointer в TMemoryStream. Как?


trylok ©   (2014-06-06 18:06:00) 

Не пойму как записать содержимое P в MS. Через SetPoiner? Но как тогда определить размер содержимого P? Что передать в качестве второго параметра SetPointer - const ASize: NativeInt?


procedure Set(const P: Pointer);
var
 MS: TMemoryStream;
begin
 MS := TMemoryStream.Create;
 try
   MS. // <- Записать содержимое P в MS
 finally
   MS.Free;
 end;
end;


brother   (2014-06-07 13:59:00) [1]

в параметры добавить Size: integer ?


RWolf   (2014-06-07 13:54:00) [2]

а лучше вообще не использовать указатели, в дельфях масса более удобных механизмов.


Юрий Зотов   (2014-06-07 13:50:00) [3]

А есть ли вообще смысл писать в поток сам указатель? Содержимое того, на что он указывает - это понятно. А указатель-то зачем?


DVM   (2014-06-07 00:38:00) [4]

Ну если память на которую указывает указатель выделялась дельфийским менеджером памяти,то размер там есть по отрицательному смещению, но лучше конечно хранить размер явно без этих выкрутасов.


Inovet   (2014-06-06 20:10:00) [5]

В функцию вместе с поинтером передать и размер.


Palladin   (2014-06-06 19:58:00) [6]


> trylok   (06.06.14 18:06)  

ну это же твой поинтер, как ты не знаешь размер


sniknik   (2014-06-06 19:03:00) [7]

поинтер эту указатель, откуда у него размер содержимого (и вообще содержимое)? вот зажмурься покрутись вокруг себя, после ткни куда нибудь пальцем, открывай глаза смотря строго на палец... какой размер у того на что он указывает?

можно только у типизированного указателя размер данных узнать (типизированный это такой специальный "палец" который указывает только на что то конкретное... например на поллитру, или бочоночек пива).


Наверх

Титульная страница Поиск, карта сайта Написать письмо