HAIdle
دوشنبه 22 مرداد 1386, 16:57 عصر
ا سلام
کلاس زیر را در نظر بگیرید:
class test
{
public string ticket;
public int num;
public test(string str, int i)
{
ticket = str;
num = i;
}
حال کد زیر را مشاهده نمایید:
test t1 = new test("t1", 1);
test t2 = new test("t2", 2);
t2 = t1;
t1.ticket = "salam";
t1.num = 110;
با توجه به کد بالا انتظار داریم که t2.ticket برابر t1 و t2.num برابر 1 باشد. ولی در کمال تعجب می بینیم که مقادیر جدید t1 یعنی "salam" و
110 در t2 هم وارد شده است. علت آن چیست؟
کلاس زیر را در نظر بگیرید:
class test
{
public string ticket;
public int num;
public test(string str, int i)
{
ticket = str;
num = i;
}
حال کد زیر را مشاهده نمایید:
test t1 = new test("t1", 1);
test t2 = new test("t2", 2);
t2 = t1;
t1.ticket = "salam";
t1.num = 110;
با توجه به کد بالا انتظار داریم که t2.ticket برابر t1 و t2.num برابر 1 باشد. ولی در کمال تعجب می بینیم که مقادیر جدید t1 یعنی "salam" و
110 در t2 هم وارد شده است. علت آن چیست؟