Rust में फ़ंक्शन आर्गुमेंट्स के लिए डिफ़ॉल्ट मान कैसे लागू करें?
नमस्ते साथियों! मैं Rust में नौसिखिया हूँ और Python से आ रहा हूँ, जहाँ डिफ़ॉल्ट आर्गुमेंट्स के साथ फ़ंक्शन आसानी से लिखे जा सकते हैं:
def greet(name, greeting="Привет"):
print(f"{greeting}, {name}!")
अब Rust में भी ऐसा ही करने की कोशिश कर रहा हूँ, लेकिन कंपाइलर त्रुटि दे रहा है। यहाँ मेरा कोड है:
fn greet(name: &str, greeting: &str = "Привет") {
println!("{}, {}!", greeting, name);
}
कंपाइलर त्रुटि देता है: expected identifier, found `=`। मैं समझता हूँ कि Rust में डिफ़ॉल्ट आर्गुमेंट्स के लिए कोई सिंटैक्स नहीं है, लेकिन इस समस्या को कैसे हल करूँ? मुझे चाहिए कि फ़ंक्शन एक आर्गुमेंट (तब डिफ़ॉल्ट अभिवादन "Привет" हो) और दो आर्गुमेंट्स दोनों के साथ काम कर सके।
मैंने फ़ंक्शन ओवरलोडिंग का उपयोग करने की कोशिश की, लेकिन Rust इसे सपोर्ट नहीं करता। दो अलग-अलग नामों वाले फ़ंक्शन बनाने की कोशिश की — यह काम करता है, लेकिन कोड बोझिल हो जाता है। क्या कोई अधिक इडियोमैटिक तरीका है? शायद structs या enums का उपयोग करें? या कोई और तरीका है?