值类型与引用类型

c#中基本数据类型和string类型都是值类型,int和Int32、String、string都是值类型。

引用类型的传递是指针的传递,所以函数调用的时候会自动返回类型的值。例如

private void  aa()

{

 DataTable dt = new DataTable();
            dt.Columns.Add("a1");
            dt.Columns.Add("a2", typeof(System.Int32));
            dt.Columns.Add("a3", typeof(System.Int32));

            DataRow dr1 = dt.NewRow();
            dr1[0] = 1;
            dr1[1] = 2;
            dr1[2] = 3;
            dt.Rows.Add(dr1);

aa(dt);//修改其值

 

int i=1;

bb(i);//不修改值

cc(i);//修改其值

}

private void aa(DataTable  dd)

{

dd.rows[0][0]="aaaa";

}

private void bb(int i)

{

i=11112;

}

private void cc(ref int pp)

{

pp=111;

}

你可能感兴趣的:(引用类型)