C++ में फ़ंक्शन एक कोड का ब्लॉक होता है जिसे कुछ फ़ंक्शन करने के लिए पेश किया जाता है और फ़ंक्शन में वेरिएबल्स को इंगित करने के लिए पॉइंटर्स का उपयोग किया जाता है। पते के साथ संकेतक दिए गए हैं।
C++ में फ़ंक्शंस से पॉइंटर कैसे लौटाएं
C++ में किसी फ़ंक्शन से पॉइंटर वापस करना संभव है। इसे उस फ़ंक्शन के सूचक के रूप में रिटर्न प्रकार फ़ंक्शन घोषित करके प्राप्त किया जा सकता है। बनाया गया प्रत्येक फ़ंक्शन मेमोरी में एक निर्दिष्ट पता लेता है। फ़ंक्शन के नाम के बाईं ओर तारांकन चिह्न * डाला गया है।
वाक्य - विन्यास
यह C++ में किसी फ़ंक्शन से पॉइंटर लौटाने के लिए एक सिंटैक्स है:
वापस करना प्रकार ( * function_pointer_name ) ( तर्क_प्रकार_1, तर्क_प्रकार_2, ……, तर्क_प्रकार_एन ) = function_name ;
उदाहरण 1
यह उदाहरण C++ में किसी फ़ंक्शन से पॉइंटर की वापसी को दर्शाता है:
#शामिल करें
का उपयोग करते हुए नाम स्थान कक्षा ;
खालीपन परिणाम ( int यहाँ & ए )
{
ए + = 10 ;
}
int यहाँ मुख्य ( )
{
int यहाँ एक्स = 40 ;
//पॉइंटर फ़ंक्शन से लौटता है
खालीपन ( * पीटीआर ) ( int यहाँ & ) = & परिणाम ;
पीटीआर ( एक्स ) ;
अदालत << एक्स << अंतः ;
वापस करना 0 ;
}
इस स्रोत कोड में, एक शून्य परिणाम फ़ंक्शन घोषित किया जाता है और int a का संदर्भ लेता है जिसे 10 गुना बढ़ाया जाता है। एक वेरिएबल x मान 40 संग्रहीत करता है, और *ptr फ़ंक्शन int& की ओर इंगित करता है। चूंकि पीटीआर परिणाम की ओर इशारा करता है, इसलिए x 10 से बढ़ जाता है।
इनपुट x का मान 10 से बढ़ाया जाता है और 50 से लौटाया जाता है।
उदाहरण 2
यह एक उदाहरण है जो श्रमिकों के साप्ताहिक वेतन की गणना करता है:
#शामिल करेंका उपयोग करते हुए नाम स्थान कक्षा ;
दोहरा & साप्ताहिक घंटे प्राप्त करें ( )
{
दोहरा एच = 32.65 ;
दोहरा & घंटे = एच ;
वापस करना घंटे ;
}
दोहरा * वेतन प्राप्त करें ( )
{
दोहरा वेतन = 42.48 ;
दोहरा * प्रति घंटा वेतन = & वेतन ;
वापस करना प्रति घंटा वेतन ;
}
int यहाँ मुख्य ( )
{
दोहरा घंटे = साप्ताहिक घंटे प्राप्त करें ( ) ;
दोहरा वेतन = * वेतन प्राप्त करें ( ) ;
अदालत << 'कर्मचारियों के साप्ताहिक घंटे:'' << घंटे << अंतः ;
अदालत << 'कर्मचारियों का प्रति घंटा वेतन:' << वेतन << अंतः ;
दोहरा साप्ताहिक वेतन = घंटे * वेतन ;
अदालत << 'कर्मचारियों का साप्ताहिक वेतन:' << साप्ताहिक वेतन << अंतः ;
वापस करना 0 ;
}
इस स्रोत कोड में, घंटे और प्रति घंटा वेतन इनपुट हैं। फ़ंक्शन की विधि से रिटर्न पॉइंटर का उपयोग इन मापदंडों तक पहुंचने और श्रमिकों के साप्ताहिक वेतन की गणना करने के लिए किया जाता है।
साप्ताहिक घंटे और प्रति घंटा वेतन को जानकर, दोनों शर्तों को गुणा करके साप्ताहिक वेतन की गणना की जा सकती है।
निष्कर्ष
C++ में किसी फ़ंक्शन से पॉइंटर वापस करना संभव है। इसे उस फ़ंक्शन के सूचक के रूप में रिटर्न प्रकार फ़ंक्शन घोषित करके प्राप्त किया जा सकता है। बनाया गया प्रत्येक फ़ंक्शन मेमोरी में एक निर्दिष्ट पता लेता है।