मुझे पूरा यकीन है कि किसी फ़ंक्शन / पद्धति के 'विशेष' के लिए एक विशेष नाम है। यह एक शब्द है जो संदर्भित करता है
- कितने तर्क हैं
- तर्कों का क्रम
- कौन से तर्क वैकल्पिक हैं
क्या उसका कोई नाम है?
मुझे पूरा यकीन है कि किसी फ़ंक्शन / पद्धति के 'विशेष' के लिए एक विशेष नाम है। यह एक शब्द है जो संदर्भित करता है
क्या उसका कोई नाम है?
जवाबों:
आमतौर पर इसे एक प्रकार का हस्ताक्षर कहा जाता है ।
एक प्रकार के हस्ताक्षर में फ़ंक्शन का रिटर्न प्रकार, तर्कों की संख्या, प्रकार के तर्क या त्रुटियां शामिल हो सकती हैं।
interface
ए, या हेडर फ़ाइल में शाब्दिक रूप से सी / सी ++ फ़ंक्शन की घोषणा है (शाब्दिक रूप से कहा जाता है prototype
)।
TL; DR आप शायद एक फ़ंक्शन हस्ताक्षर (या विधि हस्ताक्षर) के बारे में बात कर रहे हैं , जिसका एक भाग एक हस्ताक्षर है।
लेकिन वास्तव में इस बात पर निर्भर करता है कि आप किसी फ़ंक्शन "कल्पना" को क्या मानते हैं। मैं इसे "एक प्रोग्रामर को कॉल करने के लिए आवश्यक सभी जानकारी" के रूप में व्याख्या करता हूं। इसमें फ़ंक्शन का नाम, पैरामीटर प्रकार, ऑर्डर और आवश्यकता शामिल है, संभवत: वापसी प्रकार, और शायद उस फ़ंक्शन का नाम स्थान भी।
लेकिन उन सभी चीजों की आवश्यकता है या नहीं (या अच्छी तरह से परिभाषित) आप जिस भाषा / वातावरण का उपयोग कर रहे हैं उस पर निर्भर करता है। इसके अलावा, यदि आप " फ़ंक्शन को कॉल करने के लिए मशीन के लिए आवश्यक सभी जानकारी" की परिभाषा बदलते हैं , तो कल्पना संभवत: अलग है 1 ।
कड़ाई से बोलते हुए, एक फ़ंक्शन (या विधि) हस्ताक्षर एक ही भाषा के भीतर एक सुसंगत शब्द, 2, 3 भी नहीं है। 4, 5, 6, 7 लेकिन यह लगभग निश्चित रूप से शब्द है जिसे आप ढूंढ रहे हैं, क्योंकि यह लगभग किसी भी प्रोग्रामर द्वारा समझा जाएगा।
public
, static
, आदिlanguage-agnostic
सी + + उदाहरण मेरे (ए) के लिए प्रासंगिक हैं और (बी) इस भ्रम के उदाहरण हैं कि अक्सर मानव शब्दावली को घेरते हैं
मेरा मानना है कि शब्द "अनुबंध" है। यह इंटरफ़ेस को परिभाषित करता है और कॉलर और कैली से क्या उम्मीद करता है; हालाँकि, यह पैरामीटर के अनुमत मूल्यों जैसी चीज़ों को भी शामिल करता है, जो कुछ ऐसी नहीं है जो कई भाषाओं को फ़ंक्शन या वर्ग परिभाषा द्वारा परिभाषित करने की अनुमति देती है, इसलिए "अनुबंध" शब्द का अर्थ आपके द्वारा की गई तुलना में व्यापक हो सकता है। मैंने इसे कई ऑब्जेक्ट ओरिएंटेड और जावा विशिष्ट प्रोग्रामिंग पुस्तकों में देखा है। मुझे यकीन नहीं है कि यह जावा विशिष्ट है, लेकिन मुझे नहीं लगता कि यह होने की आवश्यकता क्यों होगी। हस्ताक्षर एक और आमतौर पर इस्तेमाल किया जाने वाला शब्द है लेकिन मैं "अनुबंध" को पसंद करता हूं।