C++ पहचानकर्ता नामों में अंडरस्कोर के उपयोग के नियम
सभी को नमस्ते! मैंने अभी-अभी C++ सीखना शुरू किया है और देखा कि कुछ कोड उदाहरणों में लोग वेरिएबल नामों की शुरुआत में अंडरस्कोर का उपयोग करते हैं, जैसे `_value` या `__internal`। मैं समझता हूँ कि यह शायद नामकरण की कोई शैली है, लेकिन मुझे लगता है कि कंपाइलर ऐसे नामों के साथ अजीब व्यवहार करता है।
उदाहरण के लिए, मैंने यह कोड लिखने की कोशिश की:
```cpp
#include
class MyClass {
private:
int _value;
public:
MyClass(int v) : _value(v) {}
int getValue() const { return _value; }
};
int main() {
MyClass obj(42);
std::cout << obj.getValue() << std::endl;
return 0;
}
```
यह कंपाइल हो गया और काम कर रहा है, लेकिन फिर मैंने ऐसा करने की कोशिश की:
```cpp
int _main() {
return 0;
}
```
और कंपाइलर ने एक चेतावनी दी। और जब मैंने `__LINE__` को वेरिएबल नाम के रूप में उपयोग करने की कोशिश की, तो कंपाइलर ने त्रुटि दे दी।
मैं उलझन में हूँ: नियम क्या हैं? अंडरस्कोर का उपयोग कहाँ किया जा सकता है और कहाँ नहीं? क्यों कुछ अंडरस्कोर वाले नाम काम करते हैं, जबकि अन्य नहीं?