2013-09-21 2 views
5

मैं प्रतीक??? एक वैध प्रतीक या स्केला में ऑपरेटर

??? 

स्केला कोड में इस्तेमाल देखा है, मैं फिर भी अगर यह छद्म कोड या वास्तविक स्केला कोड होना है पता नहीं है, लेकिन स्केला के लिए मेरे ग्रहण आईडीई इसे ध्वजांकित नहीं करता है और ग्रहण कार्यपत्रक वास्तव में इसका मूल्यांकन करता है। मैं Google खोज के माध्यम से कुछ भी नहीं ढूंढ पाया। किसी भी मदद की सराहना की जाएगी। धन्यवाद

उत्तर

12

हां, यह एक मान्य पहचानकर्ता है।

स्कैला 2.10 के बाद, ??? विधि Predef में है जो बस NotImplementedError फेंकता है।

class Foo[A](a: A) { 

    def flatMap[B](f: A => Foo[B]): Foo[B] = ??? 

} 

(जो क्योंकि यह Nothing का एक प्रकार है:

def ??? : Nothing = throw new NotImplementedError 

यह जल्दी से कुछ कोड का कंकाल चित्र, बाद में करने के लिए तरीके के कार्यान्वयन छोड़ने के लिए प्रयोग की जाने वाली, इरादा है, उदाहरण के लिए हर दूसरे प्रकार का एक उप प्रकार), यह किसी भी मूल्य के स्थान पर टाइप-चेक करेगा, जिससे आप अपूर्ण कोड को त्रुटियों के बिना संकलित कर सकते हैं। इसे अभ्यास में अक्सर देखा जाता है, जहां समाधान ??? के स्थान पर लिखा जाना चाहिए।

+2

दिलचस्प बात यह है कि यह था पहले Coursera स्काला कोर्स अवधि के तुरंत बाद मानक पुस्तकालय में पेश किया गया, जहां इसे व्यायाम पुस्तकालय में शामिल किया गया था। मुश्किल से एक संयोग, शायद;)। –

संबंधित मुद्दे