में एकाधिक रिटर्न मानों पर रूपांतरण/प्रकार का दावा करने का बेवकूफ तरीका गो में एकाधिक रिटर्न मान डालने का बेवकूफ तरीका क्या है?गो
क्या आप इसे एक ही पंक्ति में कर सकते हैं, या आपको नीचे दिए गए उदाहरण में अस्थायी चर का उपयोग करने की आवश्यकता है?
package main
import "fmt"
func oneRet() interface{} {
return "Hello"
}
func twoRet() (interface{}, error) {
return "Hejsan", nil
}
func main() {
// With one return value, you can simply do this
str1 := oneRet().(string)
fmt.Println("String 1: " + str1)
// It is not as easy with two return values
//str2, err := twoRet().(string) // Not possible
// Do I really have to use a temp variable instead?
temp, err := twoRet()
str2 := temp.(string)
fmt.Println("String 2: " + str2)
if err != nil {
panic("unreachable")
}
}
वैसे, यह casting
कहा जाता है जब यह इंटरफेस के लिए आता है?
i := interface.(int)
असल में, इसे या तो कलाकार नहीं कहा जाता है। इसे एक रूपांतरण कहा जाता है। http://golang.org/ref/spec#Conversions –
दोनों सवालों के जवाब देने के लिए धन्यवाद। मैंने इस शीर्षक को प्रश्न के लिए अधिक पर्याप्त बनाने के लिए संपादित किया है। – ANisus