يفتقر إلى الربط المصاحب - ماذا يعني؟كيف تعمل؟

StackOverflow https://stackoverflow.com//questions/11683419

  •  12-12-2019
  •  | 
  •  

سؤال

أنا أتدرب من LYAH.

يحتوي ملف phoneBook.hs على الكود التالي:

سجل الهاتف ::[(سلسلة، سلسلة)]

أثناء محاولتي تجميع الكود المذكور أعلاه يظهر لي الخطأ التالي:

*رئيسي>: تحميل "/home/optimight/phonebook.hs" [1 من 1] تجميع Main (/Home/Optimight/phonebook.hs ، تم تفسيره)

/home/optimight/phoneBook.hs:1:1:يفتقر توقيع النوع لـ "دفتر الهاتف" إلى فشل الربط المصاحب ، وحدات تم تحميلها:لا أحد.

تمت إضافة السؤال بعد إجابة برانو والتعليق اللاحق على هذه الإجابة:كيف يمكننا توفير التنفيذ لتوقيع النوع المذكور أعلاه؟

إذا قمت بإضافة هذا:

اكتب دليل الهاتف = [(سلسلة، سلسلة)]

أنا على الحصول على الخطأ التالي:

Prelude>: تحميل "/home/optimight/phonebook.hs" [1 من 1] تجميع Main (/home/optimight/phonebook.hs ، تم تفسيره)

/home/optimight/phoneBook.hs:2:6:رأس تالف للنوع أو إعلان الفئة:فشل دفتر الهاتف ، وحدات تم تحميلها:لا أحد

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

المحلول

تحتاج إلى توفير تطبيق لدليل الهاتف.

phoneBook :: [(String, String)] هو مجرد التوقيع.

نصائح أخرى

إذا كنت تريد الإعلان عن نوع ما، فيجب أن يحتوي على أحرف كبيرة أولية، على سبيل المثال. type PhoneBook = [(String, String)].

إذا كنت تريد الإعلان عن دالة، فأنت بحاجة إلى تقديم تعريفها فقط (الربط) أو تعريفها وتوقيع نوعها.الحد الأدنى من الجهد لتجميع التعليمات البرمجية الخاصة بك هو:

phoneBook :: [(String, String)]
phoneBook = undefined

ثم يمكنك استبدال undefined مع أي قيمة من النوع [(String, String)] على سبيل المثال [("Person","Number")].

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