سؤال

عنوان الموضوع هو في الواقع سؤالي.والسؤال الثاني هو:متى أستخدم أياً من هذين الاثنين؟

هل كانت مفيدة؟

المحلول

عندما لا يكون محددًا، يكون C++ غير مُدار، ويتم تجميعه إلى رمز الجهاز.في لغة C++ غير المُدارة، يجب عليك إدارة تخصيص الذاكرة يدويًا.

Managed C++ هي لغة اخترعتها Microsoft، والتي يتم تجميعها إلى رمز بايت يتم تشغيله بواسطة .NET Framework.يستخدم في الغالب نفس بناء الجملة مثل C++ (ومن هنا الاسم) ولكن يتم تجميعه بنفس طريقة C# أو VB.NET؛في الأساس يتغير بناء الجملة فقط، على سبيل المثال.استخدام '->' للإشارة إلى عضو في كائن (بدلاً من '.' في C#)، واستخدام '::' لمساحات الأسماء، وما إلى ذلك.

تم تصميم لغة C++ المُدارة لتسهيل الانتقال من لغة C++ الكلاسيكية إلى .NET Framework.ليس المقصود استخدامه لبدء مشاريع جديدة (يفضل C#).

نصائح أخرى

يشير "C++ المُدارة" إلى لغة تم تضمينها في Visual Studio.NET/VisualStudio.NET 2003.لقد كان منذ ذلك الحين إهمال, ، وأحدث إصدار من .net C++ هو C++/CLI.

يمكنك برمجة لغة C++ الأصلية بطريقتين مختلفتين.الأول هو الترجمة مباشرةً إلى كود الجهاز باستخدام نظام التشغيل فقط بينك وبين النظام الأساسي (الأجهزة).يتم إجراء الترميز الأصلي الثاني باستخدام MFC (فئات مؤسسة Microsoft).وهذا هو نفس المثال الأول باستثناء استخدام MFC.

تستخدم لغة C++ المُدارة CLR (وقت تشغيل اللغة العامة) وتشكل CLR بالإضافة إلى مكتبات فئة إطار العمل .net إطار العمل .NET.يستخدم معيار C++/CLI المُدار إطار عمل .Net جنبًا إلى جنب مع MSIL (لغة Microsoft المتوسطة).يعمل هذا المعيار عن طريق التعيين إلى كود الجهاز فقط عندما يتم تنفيذ البرنامج عن طريق استخدام مترجم في الوقت المناسب.إذا كان سيتم تشغيل التعليمات البرمجية الخاصة بك على منصات أجهزة مختلفة، فسيكون استخدام التعليمات البرمجية المُدارة أسهل بكثير.كما هو الحال مع كل شيء، هناك ثمن بسيط يجب دفعه مقابل الراحة، حيث سيتم تشغيل الكود الأصلي بشكل أسرع.

أعتقد أنك يجب أن تنظر هذا السؤال.

تعني Managed C++ أنه تتم معالجة تخصيص الذاكرة وإدارتها وجمع البيانات المهملة بواسطة الجهاز الظاهري.بينما في لغة C++ "العادية" سيتعين عليك تخصيص الذاكرة وإلغاء تخصيصها.

ستستخدم لغة C++ المُدارة عندما تريد استخدام مكتبة فئة C++ أصلية من التعليمات البرمجية المُدارة.في هذه الحالة، يمكنك تغليف الفئات غير المُدارة في فئات C++ المُدارة، ثم استخدامها في أي لغة CLR.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top