ما هو الجديد في Visual C++ 2010

يقدم هذا الموضوع الميزات المحسنة و الجديدة في Visual Studio 2010.

مشاريع C + + مرئية والالنظام بنية

MSBuild

حلول C + + مرئية و المشاريع مضمنة الآن باستخدام MSBuild، الذي يحل محل VCBUILD.exe. MSBuildهي أداة مرنة وقابلة للتوسعة والمستندة إلى XML لإنشاء نفس المستخدم بواسطة لغات غير ذلك في ‏‫Visual Studio و مشروع أنواع. وبالتالي، ملفات مشروع ++Visual C الآن تستخدم تنسيق ملف XML ولها امتداد اسم الملف .vcxproj. ملفات مشروع ++Visual C من الإصدارات السابقة من Visual Studio يتم تحويلها تلقائياً إلى تنسيق الملف الجديد. لمزيد من المعلومات، راجع MSBuild (Visual C++).

VC++ دلائل

وتوجد VC++ دلائل إعداد الآن في مكانين. استخدام الصفحات خصائص المشروع لتعيين قيم كل مشروع VC++ دلائل. استخدام إدارة خصائص وصفحة خصائص إلى set global، في تكوين قيم VC + + direcإلىries.

مشروع إلى مشروع التبعيات

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

وحدات الماكرو و متغيرات البيئة

ماكرو _ITERATOR_DEBUG_LEVEL الجديد يستدعى دعم التصحيح للتكرارات. استخدم هذا الماكرو بدلاً من وحدات الماكرو _SECURE_SCL و _HAS_ITERATOR_DEBUGGING القديمة .

مكتبات ++Visual C

/تحليل تحذيرات

مدير إعادة التشغيل

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

مكتبة MFC

يمكن استخدام فئة بدلاً من مربع الرسالة القياسي‬ . فئة CTaskDialog تعرض و تقوم بتجميع معلومات أكثر مما يفعل مربع الرسالة القياسى.

وحدات ماكرو ATL الجديدة

تمت تمت الإضافة وحدات ماكرو جديدة إلى ATL لتوسيع الأداء الوظيفي ل prop_entry_typeو prop_entry_type_ex. PROP_ENTRY_INTERFACE and PROP_ENTRY_INTERFACE_EX enable you to add a list of valid CLSID's. PROP_ENTRY_INTERFACE_CALLBACK و PROP_ENTRY_INTERFACE_CALLBACK_EX تمكين you إلى specify a callback دالة إلى determine if a CLSID هو صالح.

مكتبات جديدة

تقوم مكتبة SafeInt بتنفيذ العمليات الحسابية الآمنة التى تأخذ فى الاعتبار تجاوز الحد الأقصى للعدد الصحيح. تقارن هذه المكتبة أيضاً أنواعاً مختلفة من الأعداد الصحيحة.

IDE

Improved IntelliSense أخطاء

في Visual Studio 2010, the integrated development بيئة (IDE) better detects أخطاء that could cause a loss of IntelliSense و displays أحمر wavy underlines under them. في addition, the IDE reports IntelliSense أخطاء إلى the خطأ نافذة قائمة. إلى dهوplay التعليمة البرمجية التي هو الذي يسبب المشكلة، انقر نقراً مزدوجاً فوق الخطأ في نافذة Lهوt خطأ.

ميزة تضمين تلقائية-اكتمال #

يدعم IDE الإكمال التلقائي للكلمة أساسية #include . عند كتابة #include ، تقوم IDE بإنشاء قائمة منسدلة لملفات الرأس الصالحة. إذا قمت بالمتابعة عن طريق كتابة ملف بالاسم، IDE تصفية القائمة استناداً إلى الإدخال الخاص بك. في أي لحظة، فيمكنك تحديد القائمة ملف التي تريد تضمينها. يتيح هذا إمكانية تضمين ملف s بسرعة بدون معرفة تماما ملف اسم.

برنامج التحويل البرمجي و الرابط الخاص بـ ++Visual C

الكلمة الأساسية auto

الكلمة الأساسية auto لها غرض جديد. استخدم المعنى الافتراضي للكلمة أساسية auto للتصريح بمتغير يتم استنتاج نوعه من تعبير التهيئة في التصريح بالمتغير. خيار المحول البرمجي / Zc:auto يستدعى المعنى الجديد أو السابق للكلمة الأساسية auto .

عامل التشغيل decltype

يرجع عامل decltype نوع التعبير المحدد. استخدم عامل decltype في تركيبة مع الكلمة الأساسية auto للتصريح بأن النوع إما معقد أو معروف فقط لبرنامج التحويل البرمجي. على سبيل المثال، استخدم التركيبة للتصريح بقالب دالة له نوع إرجاع يعتمد على أنواع الوسائط الخاصة بالقالب. أو قم بالتصريح بقالب دالة يستدعي دالة أخرى , ثم يرجع نوع إرجاع الدالة المستدعاة.

تعبيرات لامدا

دالات لامدا تحتوي على جسم دالة ولكن بدون اسم. دالات لامدا تجمع أفضل الصفات المميزة لمؤشرات الدالة و كائنات الدالة .

استخدم دالة لامدا بنفسها، كمعلمة دالة قالب بدلاً من كائن دالة، أو معاً بواسطة الكلمة الأساسية auto للتصريح بمتغير يكون نوعه لامدا.

مرجع Rvalue

مُصرح مرجع Rvalue‬ (&&) يصرح بمرجع إلى rvalue . مرجع rvalue يتيح لك استخدام نقل الدلالات و إعادة توجيه ممتاز لكتابة مُنشِئات و دالات وقوالب أكثر كفاءة.

التصريح بـ static_assert

يختبر التصريح بـ static_assert تأكيد البرامج في وقت التحويل البرمجي بعكس آليات التأكيد الأخرى التى تختبر فى وقت التشغيل. في حالة فشل التأكيد , يفشل التحويل البرمجي و يتم إصدار رسالة خطأ محددة.

الكلمات الأساسية nullptr و __nullptr

برنامج التحويل البرمجي ++Visual C يتيح لك استخدام الكلمة الأساسية nullptr مع التعليمات البرمجية الأصلية أو التعليمات البرمجية المدارة. الكلمة الأساسية nullptr تشير إلى أن مؤشر(handle) الكائن أو المؤشر(pointer) الداخلي أو نوع المؤشر(pointer) الأصلي لا يشير إلى كائن. يفسر المحول البرمجي nullptr كتعليمات برمجية مدارة عند استخدام خيار المحول البرمجي /clr، و كتعليمات برمجية أصلية عندما لا تستخدم الخيار /clr .

الكلمة الأساسية الخاصة بـ Microsoft __nullptr لها نفس المعنى كـ nullptr ، ولكن يتم تطبيقها على التعليمات البرمجية الأصلية فقط. إذا قمت بالتحويل البرمجي للتعليمات البرمجية الأصلية C++/C باستخدام خيار المحول البرمجي /clr ، المحول البرمجي لا يمكنه تحديد ما إذا كانت الكلمة الأساسية nullptr مصطلحاً أصلياً أم مداراً اجعل ‏‫الهدف‬ واضحاً لبرنامج التحويل البرمجي ، استخدم ‏‫الكلمة الأساسية nullptr لتحديد المصطلح المدار و __nullptr لتحديد المصطلح الأصلي

خيار المحول البرمجي /Zc:trigraphs

بشكل افتراضى ، يتم تعطيل دعم trigraphs . استخدم خيار المحول البرمجي /Zc:trigraphs لتمكين دعم trigraphs.

trigraph يتكون من علامتي استفهام متتاليتين ("؟؟") متبوعتين بحرف فريد ثالث. المحول البرمجي يحل أحرف علامات التنقيط المطابقة محل trigraph . على سبيل المثال، يستبدل المحول البرمجي "؟؟= "trigraph مع الحرف '#'. استخدم trigraphs في ملفات المصدر C التي تستخدم مجموعة الأحرف التي لا تحتوي على بعض أحرف علامات التنقيط.

خيار التحسين الجديد المعتمد على ملف التعريف

PogoSafeMode هو خيار جديد للتحسين يستند إلى ملف التعريف، يتيح لك تحديد ما إذا كنت تستخدم الوضع الآمن أو الوضع السريع عند تحسين التطبيق الخاص بك. الوضع الآمن آمن من جهة مؤشر الترابط ولكنه أبطأ من الوضع السريع. الوضع السريع هو السلوك الافتراضى.

خيار وقت تشغيل اللغة العامة (CLR) الجديد /clr:nostdlib

يتم إضافة خيار جديد إلى /clr ( التحويل البرمجى لوقت تشغيل اللغة العامة) . إذا تم تضمين إصدارات مختلفة من نفس المكتبات, يتم إصدار خطأ ترجمة. يتيح الخيار الجديد لك استبعاد مكتبات CLR الافتراضية بحيث يمكن استخدام البرنامج للإصدار المحدد .

detect_mistmatch موجها pragma جديد

موجها pragma detect_mismatchتمكنك من وضع علامة في الملفات التي هو مقارنة بعلامات غير ذلك بنفس الاسم. إذا كان هناك قيم متعددة لنفس الاسم، يصدر الرابط خطأ.

الأدوات

معالج عنصر تحكم ATL

معالج عنصر تحكم ATL لم يعد يقوم تلقائياً بملء الحقل ProgID. إذا لم يكن لدى عنصر تحكم ATL ProgID,، فإن الأدوات الأخرى قد لا تعمل معه. مثال على أداة تتطلب عناصر التحكم لتحصل على ProgID هو مربع الحوار إدراج عنصر تحكم نشط . للحصول على مزيد من المعلومات حول مربع الحوار ، راجع إدراج مربع حوار تحكم ActiveX.

معالج من فئة MFC

Visual Studio 2010reintroduces معالج صنف MFC. يمكنك استدعاء معالج فئة من أي مكان في الحل الخاص بك. يتيح لك إضافة فئات ورسائل والمتغيرات دون تعديل تعليمات برمجية الفردية يدوياً معالج ملفات.

مرجع مجمع الماكرو الخاص ب Microsoft

إضافة نوع البيانات YMMWORD يدعم معاملات الوسائط المتعددة 256 بت التي تم تضمينها في تعليمات ملحقات المتجهات المتقدمة (AVX) الخاصة بـ Intel .

راجع أيضًا:

المبادئ

التغييرات الجذرية (Breaking Changes) فى ++Visual C

موارد أخرى

الشروع في العمل مع 2010 ++Visual C