एफ # में, आप एक फ़ंक्शन को कैसे घुमाते हैं जो चरम संख्याओं को स्वीकार करता है?एफ # में, आप परमएरे फ़ंक्शन (जैसे sprintf) को कैसे करी करते हैं?
मैं इस तरह कोड है ... (लॉग समारोह सिर्फ एक उदाहरण है, सटीक कार्यान्वयन कोई फर्क नहीं पड़ता)
let log (msg : string) =
printfn "%s" msg
log "Sample"
यह sprintf स्वरूपित तार के साथ कोड भर बुलाया जाता है, उदा।
log (sprintf "Test %s took %d seconds" "foo" 2.345)
मैं तो यह की तरह लग रहा लॉग समारोह में sprintf कार्यक्षमता करी करना चाहते हैं ...
logger "Test %s took %d seconds" "foo" 2.345
मैं की तरह
let logger fmt ([<ParamArray>] args) =
log (sprintf fmt args)
कुछ कोशिश की है, लेकिन मैं समझ नहीं sprintf कॉल के माध्यम से ParamArray तर्क कैसे पारित करें।
यह एफ # में कैसे किया जाता है?
FYI - आप [स्वरूपण अभिव्यक्ति] के बारे में पूछ रहे हैं (http://msdn.microsoft.com/en-us/library/ee340241) (जो टाइप किए गए हैं), परम सरणी नहीं (जो अनियमित हैं)। – Daniel