2009-10-16 18 views
40

मैं इसे हमेशा "तीर ऑपरेटर" कहता हूं, लेकिन मुझे यकीन है कि इसका आधिकारिक नाम है। मैंने जल्दी से सी ++ मानक स्किम किया और इसे नाम से उल्लेख नहीं किया।सी ++ के तीर (->) ऑपरेटर का आधिकारिक नाम क्या है?

+0

सी 99 ड्राफ्ट में, मुझे इसके नाम का कोई उल्लेख नहीं मिल रहा है। इसे हमेशा उस दस्तावेज़ में "-> ऑपरेटर" कहा जाता है। –

+0

@ मेहरदाद: इसे इंडेक्स में "तीर ऑपरेटर" कहते हैं हालांकि – AnT

+3

एंड्रीटी: इंडेक्स में, मैं "तीर ऑपरेटर (->)" और "पॉइंटर ऑपरेटर (->)" –

उत्तर

59

सी ++ मानक बस इसे "तीर" (§5.2.5) कहते हैं।

+3

पहले 5.2.4 में उल्लिखित, लेकिन फिर डॉट ऑपरेटर के साथ सर्वव्यापी भी। –

8

Wikipedia's list of operators in C and C++ के अनुसार, इसे "सूचक द्वारा सदस्य" कहा जाता है।

लेकिन पूरी तरह ईमानदार होने के लिए, मैंने हमेशा इसे "तीर" कहा है। उदाहरण के लिए, यदि मेरे पास कोड a->b था, तो मैं इसे "एक तीर बी" के रूप में पढ़ूंगा।

+1

मैंने इसे उसी तरह पढ़ा। मुझे आश्चर्य है कि क्यों .... (पीएस हाय टू!) –

+1

मुझे प्रश्न पोस्ट करने से पहले विकिपीडिया लेख मिला। इस तथ्य के बावजूद कि यह तालिका में "नाम" कॉलम के तहत सूचीबद्ध है, मुझे विश्वास है कि यह एक विवरण है, नाम नहीं। – rmeador

27

बजेर्न स्ट्राउस्ट्रप इसे "संरचना सूचक डेरफ़्रेंस" ऑपरेटर (टीसी ++ पीएल विशेष संस्करण, पृष्ठ 102) कहते हैं। इंडेक्स में वह इसे "सदस्य पहुंच" ऑपरेटर के रूप में संदर्भित करता है।

सुनिश्चित नहीं है कि यह "आधिकारिक" है लेकिन लड़के ने भाषा लिख ​​ली है, आखिरकार।

+1

मैं पुष्टि कर सकता हूं कि यह मामला है। (हाँ, मैं वास्तव में सी ++ प्रोग्रामिंग भाषा विशेष संस्करण में गया और इसे चेक आउट किया।) –

+19

उसने सी का आविष्कार नहीं किया, और यही वह जगह है जहां ऑपरेटर आता है। – asveikau

+2

asveikau, आपके दोनों कथन सही हैं, लेकिन सवाल के साथ क्या करना है? – John

12

इस ऑपरेटर का आधिकारिक नाम वर्ग सदस्य पहुंच ऑपरेटर (5.2.5 देखें)। हालांकि यह नाम . और -> ऑपरेटरों दोनों से जुड़ा हुआ है, जिसका अर्थ है कि यह समूह का अधिक नाम है। मानक पाठ में . को डॉट ऑपरेटर और ->तीर ऑपरेटर के रूप में भी जाना जाता है।

बाद में जोड़ा गया: उपरोक्त सी ++ मानक पर लागू होता है। सी मानक केवल सूचकांक में ->तीर ऑपरेटर के रूप में संदर्भित करता है। दस्तावेज़ का मुख्य पाठ किसी विशिष्ट नाम का उपयोग नहीं करता है।

0

आईएसओ सी मानक यह ->ऑपरेटर या सदस्य का उपयोग->ऑपरेटर कहता है। तो जाहिरा तौर पर यह सी में

निजी तौर पर एक "आधिकारिक" नाम नहीं है, मैं सिर्फ इतना कहना सूचक या तीर

4

यह सिर्फ डाइट (यानी डॉट नहीं) है।

1

मैंने सुना है यह कुछ अलग अलग तरीकों से जाना जाता है, यकीन है कि विशेष रूप से किसी भी एक-दूसरे से ज्यादा अधिकारी था कभी नहीं था।

  • सदस्य चयन ऑपरेटर
  • सूचक dereferencing ऑपरेटर
  • "तीर thingy"

और मुझे यकीन है कि वहाँ दूसरों रहे हैं रहा हूँ। व्यक्तिगत रूप से मैं इस बारे में कम चिंतित हूं कि इसे किसी पुस्तक या आधिकारिक विशिष्टता में क्या कहा जाता है और इससे अधिक चिंतित है कि लोग जानते हैं कि जब मैं इसका उल्लेख करता हूं तो मेरा क्या मतलब है, इसलिए मेरी राय में "तीर चीज़" इसके लिए सबसे अच्छा नाम है क्योंकि यह सबसे आसान है स्पष्ट रूप से समझने के लिए क्या संदर्भित किया जा रहा है।

2

इन शब्दों का कोई रास्ता नहीं आधिकारिक में हैं, लेकिन मैं डॉट ऑपरेटर फोन था प्रत्यक्ष (वर्ग) सदस्य पहुँच ऑपरेटर और तीर ऑपरेटर अप्रत्यक्ष (वर्ग) सदस्य पहुँच ऑपरेटर साथ अपने रिश्ते को स्पष्ट करने के लिए इंडिकेटर ऑपरेटर।

2

आईएसओ/आईईसी 98 99: 1 999 (सी 99 मानक) के सूचकांक में 'तीर ऑपरेटर' (अपने अधिकार में, और 'संघ' और 'संरचना' के तहत) के लिए तीन सूचकांक प्रविष्टियां हैं, और धारा 6.5 को संदर्भित करती हैं। 2.3 (पोस्टफिक्स ऑपरेटरों के अनुभाग में संरचना और संघ के सदस्य)। हालांकि, सूचकांक की तुलना में धारा 6.5.2.3 या मानक में कहीं भी 'तीर' का कोई उल्लेख नहीं है ('तीर' की हर दूसरी उपस्थिति 'संकीर्ण' या संकीर्ण व्युत्पन्न के हिस्से के रूप में है)।

तीर इसलिए सी मानक में अर्द्ध आधिकारिक रूप से स्वीकृत है (सूचकांक मानक या मानक सेटिंग नहीं है)।

0

ऑपरेटर को संदर्भ में "उच्चारण" करने के तरीके के बारे में एक हालिया प्रश्न था। गुणात्मक ऑपरेटर पर विचार करें जिसे संदर्भ में "समय" कहा जाता है।

मैं दोनों सदस्य एक्सेस ऑपरेटरों पर विचार करता हूं {। ->} कब्जे को इंगित करने के लिए, इसलिए मैं उन्हें वस्तु पर एक स्वामित्व के रूप में उच्चारण करता हूं।

उदाहरण के लिए ... फिडो-> कॉलर() ... "फिडो कॉलर" के रूप में उच्चारण किया जाएगा।

दूसरी ओर कब्जे के लिए अधिकार उचित नहीं है ... फिडो-> रन() ... "फिडो रन" के रूप में उच्चारण किया जाएगा।

+0

यह विषय-वस्तु है: ओपी ने पूछा कि प्रतीक क्या कहलाता था, और सी ++ मानक का हवाला देते हुए एक उत्तर पहले ही प्रदान किया जा चुका है। यदि प्रतीकों के उच्चारण के बारे में कोई और सवाल था, तो आपको यहां की बजाय टिप्पणी करनी चाहिए। – DMH

संबंधित मुद्दे