संभव डुप्लिकेट:
Cannot use ‘this’ in member initializer?सदस्य प्रारंभकर्ताओं में आप 'इस' का उपयोग क्यों नहीं कर सकते?
कोई भी विचार कारण है कि मैं कोई त्रुटि मिलती है अगर मैं कुछ इस तरह से करने की कोशिश:
public class Bar
{
public Bar(Foo foo)
{
}
}
public class Foo
{
private Bar _bar = new Bar(this);
}
मैं कह कोई त्रुटि मिलती है:
सदस्य प्रारंभकर्ता में "इसका उपयोग नहीं कर सकता"
लेकिन निम्न काम करता है:
public class Foo
{
private Bar _bar;
public Foo()
{
_bar = new Bar(this);
}
}
कोई भी इस के पीछे कारण पता है? मेरी समझ यह थी कि ये एक ही आईएल को संकलित करेंगे, इसलिए उत्सुक हूं कि किसी को अनुमति क्यों है और दूसरा नहीं है।
धन्यवाद, एलेक्स
मुझे यकीन नहीं है कि यह प्रश्न डुप्लिकेट के रूप में क्यों बंद है, क्योंकि दूसरे प्रश्न का उत्तर यह है कि क्यों एक त्रुटि के रूप में रिपोर्ट नहीं की जा रही थी, "यह संकलक में एक बग है" वास्तव में बिना समझाओ कि इसकी अनुमति क्यों नहीं थी। – Powerlord