मैं एक struct (.NET 3.5) है:सी # में किसी स्ट्रक्चर में मानों की एक सूची असाइन करें?
struct ColumnHeadings
{
public string Name ;
public int Width ;
} ;
और जब मुझे लगता है कि struct करने के लिए मानों की सूची आवंटित करने के लिए कोशिश मैं 'के लिए ... परोक्ष परिवर्तित नहीं कर सकते प्रकार स्ट्रिंग/पूर्णांक' एक मिलता है:
private void doSomething()
{
ColumnHeadings[,] ch = new ColumnHeadings[,]{{"column1",100},
{"column2",100},{"column3",100}};
}
क्या संरचना मानों को बहु-आयामी सरणी के रूप में उसी तरह असाइन किया जा सकता है? या मैं का उपयोग कर ?:
ch.Name = "column 1";
अद्यतन द्वारा मान निर्दिष्ट करने की आवश्यकता है: सही समाधान मार्क उत्तम प्रतिक्रिया के लिए
धन्यवाद है:
Struct:
struct ColumnHeadings
{
private readonly string name;
private readonly int width;
public string Name { get { return name; } }
public int Width { get { return width; } }
public ColumnHeadings(string name, int width)
{
this.name = name;
this.width = width;
}
}
फिर विधि में:
var ch = new[]{new ColumnHeadings("column1",100),
new ColumnHeadings("column2",100),
new ColumnHeadings("column3",100)};
और link क्यों म्यूट्यूबल structs एक अच्छा विचार नहीं है।
जिज्ञासा से बाहर, क्यों 'ColumnHeadings' दो आयामी है? –
@ सी रॉस - मैशप एरेज़/structs मैशप करने की कोशिश करने के कारण 2 डी ... :) –
एक 2 डी सरणी में होमजोनस डेटा होना चाहिए; यह वास्तव में एक 1-आयामी सरणी है जहां प्रत्येक तत्व में 2 मान होते हैं - –