متغيرات ثابتة بدون تكلفة في C++: الاستفادة من ميزات الرابط

2025-07-19

تتناول هذه المقالة العبء الإضافي للأداء الناجم عن تهيئة المتغيرات الثابتة في C++. عادةً ما تتسبب المتغيرات الثابتة ذات النطاق الكتلي في تكاليف وقت التشغيل، مثل المزامنة باستخدام `__cxa_guard_acquire`. يقترح الكاتب تحسينًا يستفيد من ميزات رابط UNIX: تخصيص مساحة مسبقًا في قسم مخصص وإجراء التهيئة أثناء التهيئة العالمية. هذا يقضي على العبء الإضافي لوقت التشغيل، مما يجعل المتغيرات الثابتة ذات النطاق الكتلي بنفس كفاءة تلك ذات النطاق الملف. تفصّل المقالة التنفيذ، بما في ذلك معالجة تعارضات سمات القسم الناتجة عن الوظائف المضمنة وأعضاء القوالب، مما يحقق في النهاية تحسينًا بدون تكلفة.

التطوير رابط