المساعدة - البحث - قائمة الأعضاء - التقويم
نسخة كاملة: سؤال حول البادئات Afx , LP
برمجة - شبكات - كمبيوتر - منتديات الفريق العربي للبرمجة > منتديات لغات البرمجة العام > منتدى مبرمجي C و ++C و C++.NET > أرشيف منتدى قسم السي ++
آل عيد
في الحقيقة أكثر شيء مضايقني في تعلمي لـ ++C هو الاختصارات الكثيرة التي لا أجد لها معنى ، فما المقصود بـ Afx في بداية بعض الأوامر كما أني لاحظت وجود وطيفتين تكادان تؤديان نفس العمل هما MessageBox و AfxMessageBox فالافتلاف بسيط جدا فارجو توضيح المعنى .

وبالنسبة لنسبة للمؤشرات النصية LPCSTR و LPCTSTR وغيرها وجدت توضيح حول الحروف في الوسط مثلا C يعني Constant لكن لم اجد توضيح لمعنى LP فياليت المساعدة من الأخوة .
Adel Khayata
السلام عليكم.

بالنسبة لسؤالك الأول فالتوابع التي تبدأ ب : Afx هي عبارة عن توابع عامة ( General Functions ) في MFC أي أنها ليست member في أي Class من MFC مثل التابع AfxMessageBox أما التابع Messagebox فهو Member Function من ال Class المسمى CWnd .

بالنسبة لسؤالك الثاني : فإن LP هي اختصار ل Long Pointer أي مؤشر طويل ( بعرض 32 bit ) أي أن الأنواع التي تبدأ ب LP تعني أن هذا النوع يعطي مؤشراً ( بعرض 32 bit ) .

مع التحيات.
هاني الأتاسي
السلام عليكم،

أشكرك أخي عادل على اجاتك ولكني حابب أني أوضح أكثر وأزيد شوي..

بالنسبة لل Afx فكما ذكرت صحيح مية المية ، وبالنسبة للتابع AfxMessageBox والاختلاف بينه وبين MessageBox فإن الأول لايحتاج إلى مقبض النافذة وتقوم MFC داخليا باختيار الأب الأمثل لنافذة الرسالة ، فقد إذا كان في نافذة Main Frame Window فإنها سوف تكون الأب وإلا إذا لم يكن هناك نوافذ في برنامجك فسوف يكون سطح المكتب هو الأب .. يعني أكثر استخدامات AfxMessageBox تتم في ال Classes التي لا ترث من CWnd ..

بالنسبة ل LP فقد شرحها الأخ عادل .. أما ال T التي في الوسط فلها علاقة بالUnicode فأنت تعلم أنه يوجد TCHAR ، فعندما تصرح عن UNICODE في برنامجك فإن TCHAR تحول إلى WCHAR أي كل حرف يأخذ 16 بت .. أما إذا لم تعرف UNICODE فإن TCHAR تحول إلى char أي كل حرف بايت واحد ..
يعني LPCSTR تكون دائما مؤشر إلى سلسلة ذات أحرف بحجم char. أما LPTSTR فقد تكون مؤشر إلى سلسلة من نوع char أو WCHAR على حسب التصريح عن Unicode أو لا ...
بفضل دائما استخدام T في كل مكان من أجل سهولة تحويل البرنامج من أنظمة الغير Unicode إلى ال Unicode فيكفي أن تضيف التصريح عن UNICODE ..

إذا أردت أن أتحدث أكثر عن استخدام ال Unicode وكيفية استخدامها في الفيجوال سي فأنا جاهز ...

مية السلامة ..
آل عيد
الأخوة الأعزاء الأخ عادل والأخ الاستاذ هاني شكرا لكم .

وياليت يا أخ هاني توضح كيف يتم تصريح اليونيكود في البرنامج ففي الحقيقة أنا أواجه مشكلة في فهم البرمجة بشكل عام مع الـ MFC لأن كل الكتب اللي عندي تعتمد على امكانيات الـ VC وتعطيني طرق البرمجة بشكل عام ما عندي ولا كتاب واحد يوضح كيفية بناء برنامج بدون استخدام الـ AppWizard .

وعموما شكرا لكم .
آل عيد
الأخوة الأعزاء

لزيادة التوضيح هل Afx اختصار لكلمة ما ؟
هاني الأتاسي
مرحبا أخي آل عيد ...

بصراحة لم يمر علي ماهوالكلمة أو الجملة المشتقة منها كلمة Afx .

وفي أمر آخر عن ال Afx فيمكن من خلالها معرفة هل التطبيق قد تم بنائه عن طريق ال MFC . حيث تكون أسماء ال Classes التي تم عليها التسجيل في Windows تبدء بالأحرف Afx ويمكن أن تعرف اسم CLASS النوافذ عن طريق برنامج ال ++Spy .. regular_smile.gif

وإذا عثرت على معني ال Afx فلا تبخل علينا ...
هذه "نسخة - خفيفة" من محتويات الرئيسية للإستعراض الكامل مع المزيد من الصور والخيارات الرجاء إضغط هنا.
Invision Power Board © 2001-2009 Invision Power Services, Inc.