इस कोड का उपयोग करना:सी # Struct जेनेरिक निर्माता
Backing field for automatically implemented property 'Foo.Item1' must be fully assigned before control is returned to the caller. Consider calling the default constructor from a constructor initializer.
मेरा प्रश्न है, क्यों संपत्ति Item1
पूरी तरह से निर्माता के बाद निर्दिष्ट नहीं की गई है कहा जाता है:
struct Foo<T1>
{
public T1 Item1 { get; private set; }
public Foo(T1 item1)
{
Item1 = item1;
}
}
मैं इस त्रुटि का सामना करना?
संपादित करें: set
से private set
बदल गया क्योंकि इस प्रश्न में उत्परिवर्तन के साथ कुछ भी नहीं है।
कृपया परिवर्तनीय structs मत बनाओ, कृपया। –
वह क्यों नहीं चाहिए? यह वास्तव में चीजों को कभी-कभी बहुत आसान बनाता है, और कुछ लूप-गहन मामलों में प्रदर्शन में काफी सुधार कर सकता है। उत्परिवर्तनीय structs के साथ क्या गलत है? (यह भी उनके प्रश्न का उत्तर नहीं देता है।) – Mehrdad
@ लैम्बर्ट http://stackoverflow.com/questions/441309/why-are-mutable-structs-evil –