C语言数组是“引用类型”么?

例如int a[5][5];a,&a,a[0],&a[0],a[0][0],&a[0][0] 输出的都是一样的;

第1个回答  2017-09-01
引用类型是相对于值类型说的
值类型传递时,复制出一个新副本出来
引用类型不会复制出新副本,相当于指针,传递的是对象指针,对象的内存首地址,而不是整个对象。我的理解就是,类都是引用类型,和int/uint/byte这些都是值类型
int a = 10;
test(a); // 值传递 相当于 int b = a; 也就是 int b = 10;

object obj = new object();
test2(obj); // 引用传递

void test(int b)
{
....
}

void test2(object obj)
{
....
}

那些类对象有个方法名叫 Clone 也就是克隆,也就是因为 = 号只是引用传递,所以无法复制出一份副本出来,所以才需要和弄出了这个克隆函数,才能通过此方法复制出副本出来本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网