C# में दो प्रश्न चिह्न का क्या अर्थ है? (?? ऑपरेटर)
नमस्ते साथियों! मैंने हाल ही में C# सीखना शुरू किया है और किसी और के कोड में एक अजीब संरचना देखी। वहाँ कुछ इस तरह लिखा था:
```csharp
string name = userName ?? "गेस्ट";
```
मैं समझता हूँ कि `userName` एक variable है और `"गेस्ट"` एक string है। लेकिन यह दोहरा प्रश्न चिह्न (`??`) क्या करता है? क्या यह कोई comparison operator है? या `if-else` का संक्षिप्त रूप? मैंने इंटरनेट पर खोजने की कोशिश की, लेकिन केवल अंग्रेजी में सामान्य स्पष्टीकरण मिले जो पूरी तरह से समझ में नहीं आए।
क्या आप सरल शब्दों में हिंदी में समझा सकते हैं, अधिमानतः उदाहरणों के साथ? इसका उपयोग कब करना चाहिए? और क्या `??` और ternary operator `?:` में कोई अंतर है? पहले से धन्यवाद! मैं एक सरल console application लिख रहा हूँ जहाँ मुझे उपयोगकर्ता का नाम लेना है, और यदि वह null है तो "गेस्ट" प्रदर्शित करना है। यहाँ मेरा वर्तमान कोड है जो बहुत बोझिल लगता है:
```csharp
string userName = Console.ReadLine();
string name;
if (userName != null)
{
name = userName;
}
else
{
name = "गेस्ट";
}
```