Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2015.11.08;
Скачать: [xml.tar.bz2];

Вниз

Записать Pointer в TMemoryStream. Как?   Найти похожие ветки 

 
trylok   (2014-06-06 18:06) [0]

Не пойму как записать содержимое 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;


 
sniknik ©   (2014-06-06 19:03) [1]

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

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


 
Palladin ©   (2014-06-06 19:58) [2]


> trylok   (06.06.14 18:06)  

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


 
Inovet ©   (2014-06-06 20:10) [3]

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


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

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


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

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


 
RWolf ©   (2014-06-07 13:54) [6]

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


 
brother ©   (2014-06-07 13:59) [7]

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



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

Форум: "Начинающим";
Текущий архив: 2015.11.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.001 c
2-1401695334
lewka_s
2014-06-02 11:48
2015.11.08
Проблема соединения с SQL Server


2-1401973992
Дмитрий
2014-06-05 17:13
2015.11.08
как создавать столбцы в excel- при его отсутствии на ПК


2-1402078384
0w1
2014-06-06 22:13
2015.11.08
создание бд аэропорта


15-1426698791
Dimka Maslov
2015-03-18 20:13
2015.11.08
Функция


2-1402063561
trylok
2014-06-06 18:06
2015.11.08
Записать Pointer в TMemoryStream. Как?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский