के रूप में Lambda \ Anonymous फ़ंक्शन मैं सी # के लिए बहुत नया हूं। बस इसके साथ खेल रहा है। असली उद्देश्य के लिए नहीं।पैरामीटर
void makeOutput(int _param)
{
Console.WriteLine(_param.ToString());
}
//...
// Somewhere in a code
{
makeOutput( /* some not c# code for an example for what do I want */ function : int() { return 0; } );
}
क्या वास्तविक अज्ञात कार्यों का उपयोग करना संभव है (परिणाम लौटने का मतलब है)? इस तरह के
void makeOutput(Func<int> _param)
{
}
बहुत आम निर्णय है कि के रूप में
मैं प्रतिनिधियों उपयोग करने के लिए इस तरह के
// Somewhere in a code
{
Func<int> x =() => { return 0; };
makeOutput(x())
}
के रूप में इसके अलावा, मैं विधि पैरामीटर प्रकार बदलना नहीं चाहते हैं नहीं करना चाहती।
सब कुछ ठीक है। मैं बस समझ गया कि मैं असंभव चीजें चाहता था। मैं अज्ञात फ़ंक्शन घोषित करना चाहता था और इसे उसी स्थान पर निष्पादित करना चाहता था। नोट: जेनेरिक रैपर के बिना प्रत्यक्ष घोषणा और प्रत्यक्ष कॉल।
// flash-like (as3) code /// DOES NOT COMPILE
makeOutput( (function : int(){ return 0; })() );
मैं सवाल समझ में नहीं है। क्या आप कुछ psudocode rephrase या उपयोग कर सकते हैं? –
आप पैरामीटर प्रकार क्यों नहीं बदलना चाहते हैं? – SLaks
क्योंकि वह कभी-कभी केवल 'int' का उपयोग करना चाह सकता है? – Vercas