下記のプログラムにて、1)は、ss1を経由して、string[]を宣言し初期化をしています。
2)は、経由なしで直接初期値を代入しています。
1)2)共にエラーもなく正常動作していますが、問題は無いのでしょうか?
2)には、static宣言が何処にもありません。
2)の部分に問題は無いのでしようか。
ご存知の方教えていただけないでしょうか?
C#
1public partial class Form1 : Form 2{ 3 public Form1() 4 { 5 InitializeComponent(); 6 } 7 8 private void Form1_Load(object sender, EventArgs e) 9 { 10 for( int i=0 ; i < mem_com.Length ; ++i) { 11 richTextBox1.Text += mem_com[i].aflag +" " ; 12 richTextBox1.Text += mem_com[i].aint +" " ; 13 richTextBox1.Text += mem_com[i].astr +" " ; 14 richTextBox1.Text += mem_com[i].astr_ar[1] +"\n" ; 15 } 16 } 17 18 public mem_class[] mem_com = new mem_class[] 19 { 20 new mem_class(false,123,"a111",ss0), 21 new mem_class(true, 456,"b222",ss1), // 1) 22 new mem_class(true, 456,"b222",new string[] {"B000","B111","B222","B333"})//2) 23 } ; 24 25 static string[] ss0 = new string[] {"A000","A111","A222"} ; 26 static string[] ss1 = new string[] {"B000","B111","B222","B333"} ; 27 28} 29 30public class mem_class 31{ 32 public bool aflag { get ; set ; } 33 public int aint { get ; set ; } 34 public string astr { get ; set ; } 35 public string[] astr_ar { get ; set ; } 36 37 public mem_class(bool cl_aflag,int cl_aint,string cl_astr,string[] cl_astr_ar) 38 { 39 this.aflag = cl_aflag; 40 this.aint = cl_aint; 41 this.astr = cl_astr; 42 this.astr_ar = cl_astr_ar ; 43 } 44}
動作環境
Windows7、Visual Studio 2015、C#
ご回答宜しくお願いいたします。
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。