आंशिक कार्यों के लिए स्ट्रिंग का नक्शा बनाते समय मैं अप्रत्याशित व्यवहार में भाग गया। जब मैं नक्शा तत्व के रूप में आंशिक कार्य करता हूं तो यह ठीक काम करता है। जब मैं एक वैल आवंटित करता हूं तो यह इसके बजाय आमंत्रित करता है। चेक का आह्वान करने का प्रयास करने से एक त्रुटि उत्पन्न होती है। क्या यह उम्मीद है? क्या मैं कुछ गूंगा कर रहा हूँ? आमंत्रण देखने के लिए check()
पर टिप्पणी करें। मैं स्केला 2.7.7स्केल आंशिक फ़ंक्शन कब आंशिक फ़ंक्शन नहीं होता है?
def PartialFunctionProblem() = {
def dream()() = {
println("~Dream~");
new Exception().printStackTrace()
}
val map = scala.collection.mutable.HashMap[String,()=>Unit]()
map("dream") = dream() // partial function
map("dream")() // invokes as expected
val check = dream() // unexpected invocation
check() // error: check of type Unit does not take parameters
}
सहायता के लिए धन्यवाद। जब मैंने सपनों() _ के साथ अपने सपने() कॉल को प्रतिस्थापित किया, तो जैसा कि मैंने उम्मीद की थी। मैं बाहर जाउंगा और आंशिक कार्यों पर और अधिक पढ़ूंगा इसलिए मैं इस शब्द को दोबारा दुरुपयोग नहीं करता हूं। –