में मैं एक समारोह f
कि दो पैरामीटर (p1
और p2
) लेता है, तो:टेस्ट एक समारोह का एक तर्क सेट हो या आर
पैरामीटर p2
के लिए कोई मूल्य नहीं कार्य करने के लिए पारित किया गया था, तो मूल्य p1
^2 के बजाय 2 का उपयोग किया जाना चाहिए। लेकिन यदि कोई मूल्य दिया गया है या नहीं, तो मैं फ़ंक्शन के भीतर कैसे पता लगा सकता हूं। समस्या यह है कि परिवर्तनीय p2
प्रारंभ नहीं किया गया है यदि कोई मूल्य नहीं था। इस प्रकार मैं p2
NULL
के लिए परीक्षण नहीं कर सकता।
f <- function(p1, p2) {
if(is.null(p2)) {
p2=p1^2
}
p1-p2
}
यह किसी भी तरह अगर p2
के लिए एक मूल्य के कार्य करने के लिए नहीं पारित किया गया था या जांच करने के लिए संभव है? (मुझे isset()
- फ़ंक्शन या इसी तरह की चीजें नहीं मिल सका।)
+1 पर आलसी मूल्यांकन पर भाग देखें। पुन: आपके द्वारा जोड़ा गया संपादित करें, आप रैपर फ़ंक्शन के माध्यम से 'गायब' कैसे हो जाएंगे? –
@ जोशो'ब्रायन पासिंग 'लापता' नस्ल जटिल AFAIK है - लेकिन संभव है। यही कारण है कि इस मामले में 'नूल' इतना आसान है। – Tommy
... तो 'लापता' नस्ल को पार करने के लिए एक अलग सवाल की आवश्यकता हो सकती है। – Tommy