"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > क्लास के सदस्यों और `std :: function` का उपयोग करके जेनेरिक C ++ कॉलबैक कैसे लागू करें?

क्लास के सदस्यों और `std :: function` का उपयोग करके जेनेरिक C ++ कॉलबैक कैसे लागू करें?

2025-03-22 पर पोस्ट किया गया
ब्राउज़ करें:754

] स्थैतिक तरीकों पर भरोसा करने और कक्षा के उदाहरण बिंदुओं के आसपास पारित करने के बजाय, एक अधिक आधुनिक सी दृष्टिकोण को STD :: फ़ंक्शन और Std :: Bind का उपयोग करके नियोजित किया जा सकता है। एक फ़ंक्शन ऑब्जेक्ट एक कॉल करने योग्य इकाई का प्रतिनिधित्व करता है जिसे एक नियमित फ़ंक्शन पॉइंटर की तरह पारित किया जा सकता है। इवेंट हैंडलर विधि AddHandler एक std :: फ़ंक्शन को एक तर्क के रूप में लेता है, जहां पारित फ़ंक्शन का कोई रिटर्न वैल्यू नहीं है और एक तर्क के रूप में एक पूर्णांक लेता है। { जनता: void addhandler (std :: function कॉलबैक) { cout addhandler (std :: bind (& myclass :: कॉलबैक, यह, _1)); } शून्य myclass :: कॉलबैक (int x) { // अब एक स्पष्ट `उदाहरण` तर्क की आवश्यकता नहीं है, // के रूप में `यह` ठीक से सेट किया गया है cout AddHandler (FreestandingCallBack); }

How to Implement Generic C   Callbacks Using Class Members and `std::function`?
अनाम कॉलबैक के लिए, लैम्ब्डा फ़ंक्शंस का उपयोग इवेंट हैंडलर के साथ किया जा सकता है। कॉलबैक के लिए लचीला और सामान्य समाधान जो विभिन्न वर्गों और कार्यों पर लागू किया जा सकता है।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3