السلام عليكم
في الحقيقة قرأت شرح التعليمة في msdn ولم افهم جيدا .
على حسب ما فهمت ان المترجم اذا وجد هذه التعليمة فانه سيقوم باستدعاء الدالة بدون inline ?!!
هل هذا هو ؟
السلام عليكم
في الحقيقة قرأت شرح التعليمة في msdn ولم افهم جيدا .
على حسب ما فهمت ان المترجم اذا وجد هذه التعليمة فانه سيقوم باستدعاء الدالة بدون inline ?!!
هل هذا هو ؟
عزيزي, الـ Intrinsic هي دوال موجودة في المترجم نفسه(و ليس في المكتبات). بمعنى أن المترجم سيقوم بتحليل الكود و إدراج قالب يقوم بتحويره ليحصل على أفضل نتائج. الفرق بينها و بين الدوال, أن المترجم لا يتدخل في تحوير كود المكتبة للحصول على أفضل نتائج, أي أن تحليل الدوال مثله مثل تحليل برنامجك. بالنسبة للـ inline فهي مشابهة في النتيجة, و لكن كما قلنا عملية الـ inlining هي عملية عمياء, بينما الـ Intrinsic عبارة عن دوال يتم تطبيقها بتحليل الـ context للكود الذي يناديها. عموماً, لا تشغل بالك إلا إذا كان لديك حاجة مخصوصة لها مثل استخدام SSE أو أن أحد دوال مكتبات C لا يعطي نتائج مرجوة. الـ Intrinsics قليلة جداً مقارنة بدوال مكتبة C, و في الغالب عبارة عن مجموعة أساسية من الدوال.