Avatar ·

C/C++ से टर्नरी ऑपरेटर को Go में कैसे बदलें? मुहावरेदार तरीके

सभी को नमस्ते! मैंने C++ में कई वर्षों के काम के बाद अभी-अभी Go सीखना शुरू किया है और एक समस्या का सामना किया है। C++ में, मैं छोटी सशर्त असाइनमेंट के लिए अक्सर टर्नरी ऑपरेटर का उपयोग करता था, उदाहरण के लिए: ```cpp int min = (a < b) ? a : b; ``` लेकिन Go में ऐसा कोई ऑपरेटर नहीं है। मैं समझता हूँ कि सामान्य if/else का उपयोग किया जा सकता है: ```go var min int if a < b { min = a } else { min = b } ``` लेकिन यह एक पंक्ति के बजाय 4-5 पंक्तियाँ लेता है। मान चुनने या स्ट्रिंग को फ़ॉर्मेट करने जैसी सरल चीज़ों के लिए यह बहुत बोझिल लगता है। उदाहरण के लिए, मैं कुछ इस तरह करना चाहता हूँ: ```go fmt.Println("Result: " + (score > 50 ? "Pass" : "Fail")) ``` या return के अंदर शर्त के आधार पर मान असाइन करना: ```go return (isValid ? data : defaultValue) ``` Go में इसे सही तरीके से कैसे करें? क्या ऐसे निर्माणों को छोटा करने का कोई मुहावरेदार तरीका है? शायद कुछ बिल्ट-इन functions या patterns हैं? कोड उदाहरणों के लिए आभारी रहूँगा। <<>>

संक्षिप्त उत्तर: Go में टर्नरी ऑपरेटर नहीं है। इसके बजाय if/else का उपयोग करें। छोटे मामलों के लिए, आप एक सहायक function बना सकते हैं या सीधे if का उपयोग कर सकते हैं।

अभी तक कोई उत्तर नहीं।

लॉग इन करें उत्तर देने के लिए

ब्लॉग