أنواع ب #
يصف هذا الموضوع الأنواع المستخدمة في F# و كيف تتم تسمية ب # أنواع و المذكورة.
خلاصة من F# أنواع
تعتبر بعض أنواع الأنواع الأولية ، مثل كـ قيمة منطقية كتابة boolوأنواع النقطة العائمة ومتكاملة ذات أحجام مختلفة، تضمين أنواع لوحدات البايت وحرفا. هذه أنواع موصوفة في أنواع الأولية (F#).
تضمين أنواع غير ذلك مضمنة في اللغة المجموعات عن وقوائم صفائف، تسلسلات والسجلات، و discriminated اتحادات. إذا كان لديك خبرة مع لغات.NET الأخرى تكون على معرفة ب #، ينبغي عليك قراءة المواضيع لكل منهما أنواع. الارتباطات لمزيد من المعلومات حول هذه أنواع مضمنة في مقطع مواضيع ذات صلة لهذا الموضوع. هذه ب #-أنواع محددة تدعم أنماط البرمجة المشتركة إلى لغات البرمجة الوظيفية. عدد هذه أنواع قد قمت بإقران الوحدات النمطية في المكتبة F# التي تدعم العمليات عام تشغيل هذه أنواع.
نوع دالة تحتوي على معلومات حول أنواع المعلمة و إرجاع نوع.
.NET Frameworkهو المصدر كائن أنواع أنواع الواجهات، المفوض وأنواع أخرى. يمكن تعريف أنواع الكائنات الخاصة بك فقط كـ يمكنك القيام بأي لغة.NET الأخرى.
أيضا، يمكن للرمز F# تعريف أسماء مستعارة، التي تسمى اختصارات نوع ، التي هي عبارة عن أسماء بديلة ل أنواع. يمكنك استخدام اختصارات نوع عندما النوع قد تتغير في المستقبل وتريد إلى تجنب تغيير تعليمات برمجية التي تعتمد تشغيل النوع. أو، يمكنك استخدام اختصار من نوع كاسم متداول لنوع والذي يمكن أن يجعل تعليمات برمجية أسهل إلى القراءة والفهم.
بناء الجملة لأنواع
في ب # تعليمات برمجية، غالباً ما يتوجب عليك الكتابة أسماء أنواع. يحتوي كل نوع نموذج syntactic و استخدم syntactic النماذج الموجودة في نوع التعليقات التوضيحية، أسلوب مجرد تصريحات، تفويض تصريحات والتواقيع وبنيات غير ذلك. عندما تقوم بتعريف بنية برنامج جديد في أن مترجم، كان مترجم طباعة الاسم الخاص بناء وبناء جملة به نوع. قد يكون بناء الجملة هذا معرّف فقط لنوع معرّف من قبل المستخدم أو مضمنة معرّفاً مثل intأو string، ولكن لأكثر من مركب أنواع، بناء الجملة هو مركب أكثر.
يعرض الجدول التالي أوجه نوع بناء الجملة ل F# أنواع.
Type |
نوع بناء الجملة |
أمثلة |
---|---|---|
نوع مجموعة أساسية |
type-name |
int float string |
تجميع نوع (فئة، وبنية، وتوحيد، سجل، التعداد، و هكذا) |
type-name |
System.DateTime Color |
نوع الاختصار |
type-abbreviation-name |
bigint |
نوع المؤهل بالكامل |
namespaces.type-name أو modules.type-name أو namespaces.modules.type-name |
System.IO.StreamWriter |
صفيف |
type-name[] أو مصفوفة type-name |
int[] array<int> int array |
صفيفة ثنائي الأبعاد |
type-name[,] |
int[,] float[,] |
الصفيف ثلاثي الأبعاد |
type-name[,,] |
float[,,] |
المجموعة |
type-name1 * type-name2 ... |
For مثال,(1,'b',3)has نوعint * char * int |
نوع عام |
type-parameter generic-type-name أو generic-type-name<type-parameter-list> |
'a list list<'a> Dictionary<'key, 'value> |
إنشاء نوع (نوع عام يحتوي على وسيطة نوع محدد المتوفرة) |
type-argument generic-type-name أو generic-type-name<type-argument-list> |
int option string list int ref option<int> list<string> ref<int> Dictionary<int, string> |
نوع الوظيفة الذي يحتوي على معلمة واحدة |
parameter-type1 -> return-type |
دالة الذي تستغرقه intو إرجاع stringله نوعint -> string |
نوع دالة يحتوي على معلمات متعددة |
parameter-type1 -> parameter-type2 -> ... -> return-type |
دالة الذي تستغرقه intو floatوإرجاع stringله نوعint -> float -> string |
دالة الترتيب الأعلى كـ معلمة |
(function-type) |
List.map يحتوي نوع ('a -> 'b) -> 'a list -> 'b list |
يفوّض |
تفويض offunction-type |
delegate of unit -> int |
نوع مرنة |
#type-name |
#System.Windows.Forms.Control #seq<int> |
مواضيع ذات صلة
الموضوع |
الوصف |
---|---|
وصف المضمنة البسيطة نوع s مثل المتكاملة نوع s، القيمة المنطقية نوع، وحرف نوع s. |
|
وصف unitنوع ونوع له القيمة واحدة والتي هو المشار إليها بواسطة (); يعادل voidفي C# و Nothingفي Visual Basic. |
|
يصف نوع المجموعة، وهو نوع يتكون من قيم المقترنة من أي نوع يتم تجميعها في أزواج، triples، quadruples، و هكذا. |
|
وصف نوع خيار، ونوع التي قد تحتوي على القيمة أو يمكن أن يكون فارغاً. |
|
وصف القوائم، وهي عبارة عن سلسلة مرتبة، التغير عناصر كافة نفس نوع. |
|
وصف صفائف، يتم ترتيب مجموعة من العناصر mutable لنفس نوع التي تشغل حظر من ذاكرة قريبة وذات الحجم ثابت. |
|
يصف نوع تسلسل، التي تمثل سلسلة منطقية من قيم؛ ويتم حساب قيم المفردة فقط كـ الضرورية. |
|
وصف نوع السجل، تجميع مربع متوسط من قيم مسماة. |
|
وصف نوع التوحيد discriminated هو نوع قيم التي يمكن أيا من التعيين من أنواع المحتملة. |
|
توضح هذه المقالة دالة قيم. |
|
يصف نوع فئة، ونوع كائن الذي يتوافق مع إلى نوع مرجع.NET. يمكن أن تحتوي على أنواع فئة الأعضاء، والخصائص، وواجهات مطبقة، و نوع أساس. |
|
توضح هذه المقالة structنوع ونوع كائن الذي يتوافق مع إلى عن نوع القيمة.NET. structيمثل نوع عادة تجميع مربع متوسط من بيانات. |
|
توضح هذه المقالة أنواع الواجهات، وهي عبارة عن الأنواع التي تمثل التعيين الأعضاء التي توفر وظيفة معينة والتي تحتوي على بيانات لا. يجب أن يكون تطبيق نوع واجهة بواسطة نوع كائن إلى أن تكون مفيدة. |
|
وصف نوع التفويض، والتي تمثل دالة ككائن. |
|
وصف أنواع قائمة تعداد، والقيم التي تنتمي إلى التعيين من قيم المسماة. |
|
وصف السمات، والتي تستخدم لتعيين بيانات التعريف لآخر نوع. |
|
توضح هذه المقالة الاستثناءات، حدد معلومات الخطأ. |