मैं अभी भी जाने के लिए काफी नया हूं और मैं आश्चर्यचकित इंटरफ़ेस के उप प्रकार का उपयोग करने में सक्षम नहीं हूं।एम्बेडेड इंटरफ़ेस
func test(sl bufio.ReadWriter){
// cannot use sl(type bufio.ReadWriter) as type bufio.Reader in function argument
readStuff(sl)
[...]
writeStuff(sl) // same kind of error
}
func readStuff(sl bufio.Reader){
[...]
}
हर इंटरफेस के रूप में एक ही स्मृति लेआउट है और ReadWriter एक रीडर और एक लेखक, मैं इस कोड काम करने के लिए उम्मीद कर रहा था है: यहाँ समझाने के लिए मैं क्या मतलब है एक छोटा सा उदाहरण है। मैं के साथ इंटरफ़ेस प्रकार बदलने की कोशिश की थी:
readStuff(sl.(buffio.Reader))
लेकिन यह या तो काम नहीं करता। तो मेरे पास दो प्रश्न हैं:
- यह क्यों काम नहीं करता है?
- उस समस्या के बारे में क्या जाना है?
धन्यवाद! यह readStuff (* sl.Reader) – user1612346
के साथ काम करता है मेरे पास दूसरा प्रश्न होगा: यदि मेरे पैरामीटर के बजाय मेरे सभी पैरामीटर स्लाइस हैं तो क्या होगा। रीडवाइटर के टुकड़े को रीडर के टुकड़े में बदलने का कोई शानदार तरीका है? – user1612346
मुझे लगता है कि आपको सबसे नया समाधान मिल जाएगा, एक नया टुकड़ा बनाना और इसे लूप के माध्यम से पॉप्युलेट करना है। – Daniel