مقارنة الكلمات الأساسية بلغات متعددة
يسرد هذا الموضوع مهام البرمجة العامة التي يمكن تلخيصها بلغة الكلمة الأساسية. لمزيد من المعلومات حول المهام التي تحتاج أمثلة عن الرمز، راجع مقارنة مفاهيم البرمجة بلغات متعددة مع أمثلة من التعليمات البرمجية.
الغرض |
Visual Basic |
C++ |
C# |
#F |
---|---|---|---|---|
إعلان عن متغير |
ثابت1 |
المعلنون (المفهوم، ليس الكلمة الأساسية) |
المعلنون ( كلمات أساسية تتضمن الأنواع المعرفة من قبل المستخدم و الأنواع المدمجة) |
|
تقوم بإعلان ثابت مسمى |
||||
قم بإنشاء مثيل لفئة |
new |
|||
قم بإنشاء كائن جديد |
CreateObject لكائنات COM |
CoCreateInstance() (لكائنات COM) |
new |
|
قم بتعيين كائن لمتغير الكائن |
= |
= |
<- |
|
الدالة/أسلوب لا يقوم بإرجاع قيمة |
||||
التحميل الزائد لدالة أو لأسلوب (Visual Basic: التحميل الزائد لإجراء أو لأسلوب) |
(لا يوجد لغة أو كلمة أساسية مطلوبة لهذا الغرض) |
(لا يوجد لغة أو كلمة أساسية مطلوبة لهذا الغرض) |
||
تشير إلى الكائن الحالي. |
أنا3 |
|||
قم بإستدعاء غير ظاهري لأسلوب ظاهري للكائن الحالي |
MyClass::Func1() ، حيثMyClass فئة C++ بدالة عضوFunc1. |
غير قابلة للتطبيق |
غير قابلة للتطبيق |
|
قم باسترداد حرف من سلسلة |
*(p + 10) أوp[10] حيثp هو حرف * أو wchar_t * |
str[10] حيثstr هو سلسلة |
str.Chars(10) حيثstr هو سلسلة |
|
تقوم بتعريف نوع بيانات مركبة (بنية) |
||||
يهيّئ كائن (الدالة الإنشائية) |
الدالات الإنشائية (المفهوم ، ليس الكلمة الأساسية) |
الدالات الإنشائية، أو دالات إنشائية لنوع النظام الإفتراضي |
||
ينهي كائن مباشرة |
غير قابلة للتطبيق |
~اسم_الفئة |
غير قابلة للتطبيق |
غير قابلة للتطبيق |
أسلوب مُستدعى من قبل النظام قبل أن يقوم تجميع البيانات المهملة بإستعادة كائن 5 |
وضع اللمسات الأخيرة (في Visual Basic 6.0, Class_Terminate) |
Destructors (C++) (المفهوم ، ليس الكلمة الأساسية) |
||
ضمان التخلص من الموارد غير المدارة بعد الاستخدام |
غير قابلة للتطبيق |
|||
يهيّئ متغير في المكان الذي تم إعلانه فيه |
تعتيم x As Long = 5 Dim c As New Car(FuelTypeEnum.Gas) |
/ / يهيّئ إلى قيمة: int x=5; //مع مُنشئ مناسب: C c(10); |
/ / يهيّئ إلى قيمة: int x = 123; / / أو استخدم الدالة الإنشائية الإفتراضية: int x = new int(); |
let x = 123 |
الحصول على عنوان دالة |
عنوان ل (يقوم هذا العامل بإرجاع مرجع إلى دالة في شكل مثيل المفوض) |
|||
رد الاتصال |
قم بتمرير عنوان دالة واحدة إلى أخرى التي تستدعي المنادي مرة أخرة. على سبيل المثال ، راجع كيفية: تمرير إجراءات إلى إجراء آخر في Visual Basic. |
CALLBACK (معيار نوع) callbackسمة IDL |
غير قابلة للتطبيق |
|
تقوم بالإعلان أنه يمكن تعديل كائن بشكل غير متزامن |
غير قابلة للتطبيق |
غير قابلة للتطبيق |
||
فرض إعلان صريح عن المتغيرات |
غير مطبق (يجب إعلان كل المتغيرات قبل الإستخدام) |
غير مطبق (يجب إعلان كل المتغيرات قبل الإستخدام) |
غير مطبق (يجب إعلان كل المتغيرات قبل الإستخدام) |
|
تمكين نوع الاستدلال المحلي. |
يتم تمكين استنتاج النوع تلقائياً |
|||
قم باختبار متغير الكائن الذي لا يشير إلى كائن |
pobj == NULL |
obj == null |
استخدم نوع خيار في تطابق التعبير |
|
قيمة لمتغير الكائن التي لا تشير إلى كائن |
nullptr |
|||
قم باختبار تعبير قاعدة بيانات فارغة |
غير قابلة للتطبيق |
غير قابلة للتطبيق |
غير قابلة للتطبيق |
|
قم باختبار ما إذا كانت تمت تهيئة متغير متغير |
غير قابلة للتطبيق |
غير قابلة للتطبيق |
غير قابلة للتطبيق |
غير قابلة للتطبيق |
تعريف خاصية افتراضية |
property: property الكلمة الأساسية تشير إلى تعليمات برمجية مُدارة |
البرمجة المهيئة للكائن
الغرض |
Visual Basic |
C++ |
C# |
#F |
---|---|---|---|---|
تشير إلى فئة أساسية |
||||
تقوم بإعلان واجهة |
||||
تحديد واجهة لتطبيقها |
(ينحدر فقط من الواجهة) class C1 : public I1 |
class C1 : I1 الواجهات |
||
إعلان فئة |
||||
تقوم بإعلان وحدة نمطية |
static class |
static class |
||
تقوم بإعلان تعريف جزئي لفئة أو لبنية |
غير قابلة للتطبيق |
لا يوجد مكافئ مباشر. انظر نوع ملحقات (F #) |
||
تحديد أن فئة تكون موروثة فقط. لا يمكن إنشاء مثيل من الفئة |
||||
تحدد بأن الفئة لا يمكن ان تكون موروثة. |
||||
تقوم بإعلان نوع تعداد |
||||
تقوم بإعلان فئة ثابتة |
ثابت (مطبق على حقل الإعلان) |
تكون القيم غير قابلة للتغيير (ثابتة) افتراضياً. انظر قيم (F #) |
||
إشتقاق فئة من فئة أساسية |
Class C1 : public Base (لا توجد لغة كلمة أساسية مطلوبة لهذا الغرض) |
class C1 : C2 |
||
يمنع أسلوب أو خاصية |
(لا توجد لغة كلمة أساسية مطلوبة لهذا الغرض باستثناء override لـ /clr compilations — راجع Derived Classes) |
|||
الإعلان عن أسلوب يجب تطبيقه في اشتقاق فئة |
يضع = 0 في نهاية إعلان (أسلوب ظاهري خالص) |
|||
تقوم بإعلان أسلوب لا يمكن تجاوزه |
غير قابل للتجاوز (تكون الأساليب NotOverridable افتراضياً.) |
استخدم سمة مغلقة |
||
تقوم بإعلان أسلوب ظاهري أو خاصية، أو موصل الخاصية |
abstract ، كما هو موضح فيأساليب |
|||
إخفاء عضو فئة أساسية في فئة مشتقة |
إخفاء أسلوب ظاهري أو مجرد لا يكون مسموح به |
|||
تقوم بإعلان مرجع نوع آمن لأسلوب فئة |
myObj.myFunction حيثmyObj هو كائن وmyMethod هو أسلوب متوفر على ذلك الكائن |
|||
تحديد أن متغير يمكن أن يحتوي على كائن الذي ترغب بمعالجة أحداثه |
غير قابلة للتطبيق |
(كتابة تعليمات برمجية - عدم وجود كلمة أساسية محددة) |
غير قابلة للتطبيق |
|
تحديد الأحداث التي سيتم فهيا استدعاء إجراء الحدث |
معالجة (إجرائات الأحداث يكون ان تكون لا تزال مقترنة مع WithEvents متغير بواسطة نقش التسمية) |
غير قابلة للتطبيق |
معالج الأحداث += الحدث; |
غير قابلة للتطبيق |
قم بتقييم تعبير كائن مرة واحدة، للوصول لأعضاء متعددة |
غير قابلة للتطبيق |
غير قابلة للتطبيق |
غير قابلة للتطبيق |
معالجة الاستثناءات
الغرض |
Visual Basic |
C++ |
C# |
#F |
---|---|---|---|---|
معالجة الاستثناءات |
معالجة الاستثناء المصنف__حاول __بإستثناء معالجة الاستثناء (#C) معالجة الاستثناء CLR |
بنيات القرار
الغرض |
Visual Basic |
C++ |
C# |
#F |
---|---|---|---|---|
بنية قرار (التحديد) |
||||
بنية قرار (إذا كان... ثم) |
||||
هيكل حلقة (الشرطي) |
||||
حلقة حل (تكرار) |
الصفائف
الغرض |
Visual Basic |
C++ |
C# |
#F |
---|---|---|---|---|
تقوم بإعلان صفيف |
int[] x = new int[5]; |
let x = [| 1; 2; 3; 4; 5 |] |
||
يهيّئ صفيف |
let x = [| 1; 2; 3; 4; 5 |] |
|||
تخصيص صفيف |
غير قابلة للتطبيق |
غير قابلة للتطبيق |
غير قابلة للتطبيق |
فئة النطاق
الغرض |
Visual Basic |
C++ |
C# |
#F |
---|---|---|---|---|
مرئية خارج المشروع أو التجميع |
||||
مرئي فقط داخل التجميع الذي تم إعلانه |
||||
مرئية فقط ضمن الفئات المشتقة أو الحالية |
غير قابلة للتطبيق |
غير قابلة للتطبيق |
||
يقتصر الوصول إلى التجميع الحالي أو الأنواع المشتقة من الفئة المحتوية. |
protected internal |
غير قابلة للتطبيق |
||
مرئية فقط ضمن المشروع (لفئات متداخلة، داخل الفئة المضمَّنة) |
نطاق عضو
الغرض |
Visual Basic |
C++ |
C# |
#F |
---|---|---|---|---|
يمكن الوصول إليه من خارج فئة، مشروع، و وحدة نمطية |
||||
يمكن الوصول إليه خارج الفئة ولكن ضمن المشروع أو الحزمة |
public private |
|||
يمكن الوصول للفئات المشتقة والحالية فقط |
غير قابلة للتطبيق |
|||
يمكن الوصول إليه فقط داخل فئة أو وحدة نمطية |
||||
تحديد أن دالة أو فئة أخرى لها حق الوصول إلى الأعضاء الخاصيين لإعلان الفئة |
غير قابلة للتطبيق |
غير قابلة للتطبيق |
غير قابلة للتطبيق |
|
محمي داخل التجميع و خاصة بالتجميعات الأخرى |
غير قابلة للتطبيق |
protected private |
غير قابلة للتطبيق |
غير قابلة للتطبيق |
يقتصر الوصول إلى التجميع الحالي أو الأنواع المشتقة من الفئة المحتوية. |
protected internal |
غير قابلة للتطبيق |
مدة بقاء متنوعة
الغرض |
Visual Basic |
C++ |
C# |
#F |
---|---|---|---|---|
المحافظة على المتغيرات المحلية للإجراء |
ثابت7 |
غير قابلة للتطبيق |
||
متشاركة بكل المثيلات لفئة |
Miscellaneous (متفرقات)
الغرض |
Visual Basic |
C++ |
C# |
#F |
---|---|---|---|---|
رمز التعليق |
/ / ، / * * / لتعليقات متعدد الأسطر |
|||
متحسسة لحالة الأحرف |
لا |
نعم |
نعم |
نعم |
استدعاء Windows API |
غير قابلة للتطبيق |
استخدم استدعاء النظام الأساسي انظر دالات خارجية (F #) |
||
قم بإعلان و تنفيذ حدث |
غير قابلة للتطبيق |
|||
خيوط الأوليات |
غير قابلة للتطبيق |
|||
الانتقال إلى (الفرع) |
غير قابلة للتطبيق |
1 في Visual Basic ، في المكان الوحيد بحيث Static يمكن استخدامه من قبل نفسه لإعلان متغير — على سبيل المثال، Static x As Long — ضمن إجراء.
2 في Visual Basic ، إجرائات معلنة ب Sub كلمة أساسية لا تمكن إرجاع قيمة. إذا كان إجراء لإعادة قيمة ، يجب التصريح عليه Function بالكلمة الأساسية.
3 في Visual Basic ، Me لا يتم حله في وقت التحويل البرمجي بحيث يمكنك استخدامه كقيمة الإرجاع لخاصية أو لأسلوب
4 فيVisual Basic ، دالات إنشائية لفئات مشتقة من .NET FrameworkSystem.Objectتكون مسمية دوماًNew.
5 بشكل عام، يحرر التعليمات البرمجية في مثل هذا الأسلوب موارد النظام التي لا يمكن تحريرها تلقائياً بواسطة حاوي المهملات.
6 في C++ ، فئة مجردة تحتوي على الأقل على عضو ظاهري خالص واحد.
7 في Visual Basic, يتم تخزين المتغيرات المحلية الثابتة لفئة غير مشتركة لكل مثيل فئة بدلاً من مشاركة نسخة واحدة كما في لغات أخرى. عند Static يُستخدم لإعلان عن متغيّر، يتم الإحتفاظ بقيمة هذا المتغير حتى إذا فقد المتغير النطاق واستعاده بعد ذلك.
راجع أيضًا:
المرجع
مقارنة مفاهيم البرمجة بلغات متعددة مع أمثلة من التعليمات البرمجية
مقارنة عوامل التشغيل بلغات متعددة
مقارنة أنواع البيانات بلغات متعددة
مقارنة عناصر التحكم والكائنات القابلة للبرمجة في لغات متعددة و مكتبات