प्रश्न: मैटलैब में, मैं कैसे जांच सकता हूं कि फ़ंक्शन हैंडल एक विशेष फ़ंक्शन या फ़ंक्शन प्रकार है या नहीं?Matlab - जांचें कि फ़ंक्शन हैंडल एक विशेष फ़ंक्शन या फ़ंक्शन प्रकार
उदाहरण:f1
एक फ़ंक्शन हैंडल बनें। मैं कैसे जांचूं कि f1
अंतर्निहित मैटलैब फ़ंक्शन mean
है? मैं कैसे जांचूं कि f1
एक अनाम कार्य है?
मेरा वर्तमान समाधान: इस समस्या के मेरे वर्तमान समाधान में functions
फ़ंक्शन पर कॉल शामिल है। functions
इनपुट के रूप में एक समारोह संभाल स्वीकार करता है और एक संरचना इनपुट समारोह संभाल, जैसे समारोह का प्रकार, पथ कार्यप्रणाली के नाम आदि यह काम करता है के बारे में जानकारी युक्त देता है, लेकिन यह एक आदर्श समाधान क्योंकि, official documentation उद्धृत करने के लिए नहीं है:
"सावधानी MATLAB® केवल पूछताछ और डिबगिंग उद्देश्यों के लिए functions
फ़ंक्शन प्रदान करता है। क्योंकि इसके व्यवहार बाद के रिलीज़ में बदल सकते हैं, आपको प्रोग्रामिंग उद्देश्यों के लिए इसका भरोसा नहीं करना चाहिए।"
यह एक है सार में वैध सवाल है, लेकिन मुझे आश्चर्य है कि आपको ऐसा करने की आवश्यकता क्यों है? इस सवाल के पीछे क्या बड़ी बात है कि आप क्या करने की कोशिश कर रहे हैं? –
@ सैम रॉबर्ट्स एक ऐसे फ़ंक्शन के भीतर जो 'एफ 1' को अपने इनपुट में से एक के रूप में स्वीकार करता है, मैं कुछ शॉर्ट-कट लेने में सक्षम हूं यदि' एफ 1 'नमूना माध्य आदि जैसे कई मान्यता प्राप्त कार्यों में से एक है। हालांकि, मैं भी चाहते हैं कि फ़ंक्शन अन्य प्रकार के कार्यों 'f1' के लिए काम करे, जहां ऐसे शॉर्ट-कट असंभव हैं। इसका कोई मतलब भी है क्या? –
कॉलिन, आप इस लेख के माध्यम से पढ़ सकते हैं, विशेष रूप से दो टिप्पणियां (एक उद्धृत, वास्तविक टिप्पणियों में से एक) मैथवर्क्स 'लॉरेन शूर से: http://undocumentedmatlab.com/blog/cellfun-undocumented-performance-boost/ यह इंगित करेगा कि 'सेलफुन' जैसे कुछ बिल्टिन फ़ंक्शंस आपके जैसा ही समस्या का सामना करते हैं, और दोनों फ़ंक्शन हैंडल और स्ट्रिंग तर्कों का सीमित सेट उसी स्थान पर अनुमति देते हुए समस्या को हल करते हैं, प्रीसेट के लिए वैकल्पिक और तेज़ कोड पथ प्रदान करते हैं तार। सिर्फ एक विचार। –