PDA

View Full Version : سوال: مقداردهی به آرایه ای که از کلاس خودمان ساختیم



salibsatan
دوشنبه 18 آذر 1387, 16:47 عصر
سلام دوستان.من یک کلاس ساختم که چند تا متغیر داره.بعد یک شی رو بصورت آرایه ازش ساختم.حالا می خوام به دونه دونه این خونه های آرایه(شی هام) به خاصیت هاش مقدار بدم اما قبول نمی کنه...این کد من(کلاس+طریقه استفاده)


private void button1_Click(object sender, EventArgs e)
{
clsYON[,] Shey = new clsYON[10,10];
for (int p = 0; p < 10; p++)
for (int o = 0; o < 10; o++)
{
Shey[p, o].Flag = new bool();
Shey[p , o].d = new int();
Shey[p, o].g = new int();
Shey[p, o].h = new int();
Shey[p, o].f = new int ();

}
for (int i =0;i<10;i++)
for (int j = 0; j < 10; j++)
{
Shey[i, j].Flag = false;
Shey[i , j].d = 00;
Shey[i, j].g = i + j;
Shey[i, j].h = (9 - i) + (9 - j);
Shey[i, j].f = (Shey[i, j].g) + (Shey[i, j].h);

}



}
}
class clsYON
{
public int d;
public int f;
public int g;
public int h;
public bool Flag;
}


عکس پیغام خطا رو هم بصورت کامل در زیر مشاهده می کنید.پیشاپیش از دوستانی که کمک می کنن متشکرم...

salibsatan
دوشنبه 18 آذر 1387, 16:48 عصر
اینم پیغام خطا...

farzadho
دوشنبه 18 آذر 1387, 21:01 عصر
اینم پیغام خطا...
سلام
تموم تعریفات رو اینطوری تغییر بده ببین درست میشه...
Shey[p][o].Flag = new bool();

jaza_sa
سه شنبه 19 آذر 1387, 04:08 صبح
نحوه صحیح استفاده :

for (int i = 0; i < 10; i++)
for (int j = 0; j < 10; j++)
{
Shey[i, j] = new clsYON();

Shey[i, j].Flag = false;
Shey[i ,j].d = 00;
Shey[i, j].g = i + j;
Shey[i, j].h = (9 - i) + (9 - j);
Shey[i, j].f = (Shey[i, j].g) + (Shey[i, j].h);
}
}