मैं इस तरह कार्रवाई के माध्यम से करना है:लैम्बडा अभिव्यक्ति को सीधे ऑब्जेक्ट में कैसे परिवर्तित करें?
Action action =() => { ..// };
object o = action;
किसी भी तरह से यह करने के लिए:
object o =() =>{}; //this doesn't compile
मैं इस तरह कार्रवाई के माध्यम से करना है:लैम्बडा अभिव्यक्ति को सीधे ऑब्जेक्ट में कैसे परिवर्तित करें?
Action action =() => { ..// };
object o = action;
किसी भी तरह से यह करने के लिए:
object o =() =>{}; //this doesn't compile
के बारे में क्या:
object o = (Action) (() => { ... });
हालांकि मैं वास्तव में आप नहीं जानते कि क्यों इसे पहले स्थान पर एक वस्तु के रूप में स्टोर करना चाहते हैं ...
वीईएल, प्रतिनिधि टीएस वस्तुएं हैं, लेकिन भेड़ के बच्चे नहीं हैं।
यह object o = (Action)(() => {});
संकलित करेगा, लेकिन मुझे नहीं पता कि यह बेहतर दिखता है या नहीं।
एक अन्य विकल्प, सब अलग नहीं:
object o = new Action(() => { });
असल में, मुझे यह बेहतर पसंद है। मैं मानसिक रूप से किसी भी निर्माता के रूप में अन्य समाधान की कल्पना करता हूं। साथ ही यह स्पष्ट कर सकते हैं। – Spike
मैं एक धागा के लिए एक संदेश कतार लागू कर रहा हूँ, आदेश निष्पादन के लिए कतार में रखा जा सकता है। – Benny
हाय, मैं यहाँ नया हूं। जब मैं लिख रहा हूं तो कोई एक समान उत्तर पोस्ट करते समय शिष्टाचार क्या होता है। क्या मुझे इसे हटा देना चाहिए? यह अब अनावश्यक प्रकार लगता है। – Spike
@ बेनी - यदि आप कर सकते हैं, तो 'क्यू' जैसी सामान्य संरचना का उपयोग करने पर विचार करें ताकि लैम्ब्डा अभिव्यक्तियों को वस्तुओं के रूप में नहीं डालना पड़े। –
Greg