أنواع ب #

يصف هذا الموضوع الأنواع المستخدمة في 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>

مواضيع ذات صلة

الموضوع

الوصف

أنواع الأولية (F#)

وصف المضمنة البسيطة نوع s مثل المتكاملة نوع s، القيمة المنطقية نوع، وحرف نوع s.

نوع وحدة (F#)

وصف unitنوع ونوع له القيمة واحدة والتي هو المشار إليها بواسطة (); يعادل voidفي C# و Nothingفي Visual Basic.

المجموعات عن (F#)

يصف نوع المجموعة، وهو نوع يتكون من قيم المقترنة من أي نوع يتم تجميعها في أزواج، triples، quadruples، و هكذا.

خيارات (F#)

وصف نوع خيار، ونوع التي قد تحتوي على القيمة أو يمكن أن يكون فارغاً.

قوائم (F#)

وصف القوائم، وهي عبارة عن سلسلة مرتبة، التغير عناصر كافة نفس نوع.

صفائف (F#)

وصف صفائف، يتم ترتيب مجموعة من العناصر mutable لنفس نوع التي تشغل حظر من ذاكرة قريبة وذات الحجم ثابت.

تسلسلات (F#)

يصف نوع تسلسل، التي تمثل سلسلة منطقية من قيم؛ ويتم حساب قيم المفردة فقط كـ الضرورية.

السجلات (F#)

وصف نوع السجل، تجميع مربع متوسط من قيم مسماة.

الاتحادات discriminated (F#)

وصف نوع التوحيد discriminated هو نوع قيم التي يمكن أيا من التعيين من أنواع المحتملة.

الدالات (F#)

توضح هذه المقالة دالة قيم.

الفئات (F#)

يصف نوع فئة، ونوع كائن الذي يتوافق مع إلى نوع مرجع.NET. يمكن أن تحتوي على أنواع فئة الأعضاء، والخصائص، وواجهات مطبقة، و نوع أساس.

بني (F#)

توضح هذه المقالة structنوع ونوع كائن الذي يتوافق مع إلى عن نوع القيمة.NET. structيمثل نوع عادة تجميع مربع متوسط من بيانات.

واجهات (F#)

توضح هذه المقالة أنواع الواجهات، وهي عبارة عن الأنواع التي تمثل التعيين الأعضاء التي توفر وظيفة معينة والتي تحتوي على بيانات لا. يجب أن يكون تطبيق نوع واجهة بواسطة نوع كائن إلى أن تكون مفيدة.

المفوضون (F#)

وصف نوع التفويض، والتي تمثل دالة ككائن.

عمليات التعداد (F#)

وصف أنواع قائمة تعداد، والقيم التي تنتمي إلى التعيين من قيم المسماة.

السمات (F#)

وصف السمات، والتي تستخدم لتعيين بيانات التعريف لآخر نوع.

أنواع الاستثناءات (F#)

توضح هذه المقالة الاستثناءات، حدد معلومات الخطأ.