ملخص المؤشرات في ++C

c

قدمنا جولة في ساحة المؤشرات , وما يزال هناك الكثير مما يقال عنها , ولكن ما قدمناه من موضوعات يغطي الأساس لمل سنعرض له قيما بعد من أمثلة وأفكار .

علمنا أن العنوان في الذاكرة هو ثابت مؤشر وأنه يمكن إيجاد عنوان متغير ما باستخدام المؤثر & . فالمؤشرات هي متغيرات تحتوي (تشير إلي ) عناوين . وتميز المؤشرات بنجمة "*" تعني "يشير إلي " , و يجب أن يتضمن تعريف المؤشر نوع المتغير صاحب العنوان , لأن المترجم يحتاج هذا البيان لإجراء بعض الحسابات أثناء التعامل مع المؤشرات ويمكننا الوصول إلي الشئ المشار إليه بإستخدام النجمة بمعني أخر , وهو "قيمة المتغير المشار إليه" , أو بعبارة أخري , كمؤثر لا مباشرة .

ويمكن التعامل مع المصفوفات بطريقتين , المعتادة عن طريق الأقواس المربعة , أو المؤشرات عن طريق النجمة . ومثل كافة العناوين يعتبر عنوان المصفوفة ثابتا . ولكن قيمته يمكن أن تخصص لمتغير يجري عليه عملية التزايد .

وحين يمرر لدالة عنوان متغير يمكن للدالة التعامل معه مباشرة وليس عن طريق نسخة له , علي عكس حالة إمرار قيمته وفي هذا الخصوص يعطينا إمرار المؤشرات نفس ميزة الإمرار المرجعي , إلا أن الإمرار بأسلوب المؤشرات يعطي قدرا أكبر من المرونة .

ويمكن النظر لثابت عبارة نصية كمصفوفة أو كمؤشر , والأسلوب الأخير أكثر مرونة , مع مراعاة خطورة إمكانية تسويه قيم المؤشرات . والعبارات النصية , باعتبارها مصفوفات , يمكن ترحيلها للدوال والتعامل معها بأسلوب المؤشرات .

ويستخدم المؤثر new للحصول علي مساحة معينة من الذاكرة , ويعيد مؤشرا لها (عنوانها ) , ويستخدم لإنشاء متغيرات وهياكل بيانات أثناء تنفذ البرنامج , ويستخدم المؤثر delete لتحرير المساحة المخصصة .

وحين يشير مؤشر لكائن يستخدم المؤثر السهمي للتعامل مع عناصر ذلك الكائن , وهو أيضا أسلوب التعامل مع عناصر الهياكل .

ويمكن للفئات وللهياكل أن تحتوي علي عناصر من نوع المؤشرات , تشير لبيانات من نفس نوعها وهو ما ييسر إنشاء هياكل معقدة من البيانات مثل القوائم المترابطة .

ويمكن أن توجد مؤشرات لمؤشرات ,’ وهنا تستخدم نجمتين علي الصورة int **pptr مثلا .

التسميات: