delphi4arab منتديات دلفي للعرب

نسخة كاملة : التعامل مع المؤشرات any type pointer
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله تعالى وبركاته

عند التعامل مع المؤشرات بهذه الطريقة كل شيء يشتغل عادي :
كود :
var     s: String;     ptrS: ^String; begin    s := 'delphi4arab';    showmessage('S : ' +s);    ptrS:= @s;    ptrS^:= 'New value';    showmessage('S : ' +s); end;

لكن عند التعامل معها على هذا النحو يصبح هناك مشكل ولا اعلم كيف حلها او سببه ؟
كود :
var     s: String;     ptrS: Pointer; // هنا إستعملت هذا begin    s := 'delphi4arab';    showmessage('S : ' +s);    ptrS:= @s;    ptrS^:= 'New value'; // هنا المشكل, كيف يتم حله؟    showmessage('S : ' +s); end;
هذا untyped pointer وهو مؤشر غير محدد النوع أي لا يمكن عمل dereferencing له بدون casting, يمكن حله هكذا:
PHP كود :
String(ptrS^) := 'New value';
أو
PString
(ptrS)^ := 'New value'; 
(17-07-2020, 01:12 PM)sofiane201 كتب : [ -> ]هذا untyped pointer وهو مؤشر غير محدد النوع أي لا يمكن عمل dereferencing له بدون casting, يمكن حله هكذا:
PHP كود :
String(ptrS^) := 'New value';
أو
PString
(ptrS)^ := 'New value'; 

بارك الله فيك, وحفظك من كل سوء 

تم حل المشكلة