मैं समस्या निम्नलिखित है:जेनिक्स उदाहरण कैसे सेट/सेट करें?
class Request<T>
{
private T sw;
public Request()
{
//How can i create here the instance like
sw = new T();
}
}
यह यह करने के लिए संभव है?
मैं समस्या निम्नलिखित है:जेनिक्स उदाहरण कैसे सेट/सेट करें?
class Request<T>
{
private T sw;
public Request()
{
//How can i create here the instance like
sw = new T();
}
}
यह यह करने के लिए संभव है?
एक new बाधा जोड़ें:
class Request<T> where T : new() {
private T sw;
public void Request() {
sw = new T();
}
}
इस संकलक कि T
हमेशा एक सुलभ parameterless निर्माता होगा (नहीं, तुम निर्माता के किसी भी अन्य प्रकार निर्दिष्ट नहीं कर सकते) बताता है।
आपको कक्षा घोषणा में where T : new()
की बाधा घोषित करने की आवश्यकता है। यह सार्वजनिक डिफ़ॉल्ट कन्स्ट्रक्टर के साथ T
को प्रतिबंधित करने के लिए प्रतिबंधित है।
class Request<T> where T : new()
{
private T sw;
public Request()
{
sw = new T();
}
}
अधिक जानकारी: उदाहरण के लिए: http://msdn.microsoft.com/en-us/library/d5x73970.aspx
धन्यवाद, एक उदाहरण बहुत उपयोगी होगा। – Racooon
@VuralAcar - कोई समस्या नहीं, उदाहरण के साथ अपडेट किया गया। –
इस सही और तेज़ उत्तर के लिए धन्यवाद। – Racooon