c#中对象最为参数的传递是是引用还是拷贝??

c#中对象的传递倒是是引用还是拷贝??datasetds=newdataset();dataAdapter.fill(ds);然后ds就可用直接使用了,但是从表面看应该是... c#中对象的传递倒是是引用还是拷贝??
dataset ds=new dataset();
dataAdapter.fill(ds);
然后ds就可用直接使用了,但是从表面看应该是是所谓的传值传递,对结果确是按地址传递的结果,ds里面已经被填充了数据,请教
结果是按引用传递我知道,我问的是这种以对象作为参数的传递都是默认引用传递吗??
int i 从广义上说也是一个对象,为什么按引用就要加ref 或out 才可以,??
请说出根本原因,谢谢
展开
 我来答
匿名用户
2011-09-06
展开全部
这个不管从里面表面看都是按引用传递,在dataAdapter.fill(...)方法中会对ds进行数据填充,如果按值传递,那就是复制了,那你的ds就填充不了任何数据了,填充的只是一个副本,而这个副本在fill完成后就等着被gc掉,那就毫无意义了。
百度网友6eafdad
2011-09-06 · TA获得超过474个赞
知道小有建树答主
回答量:284
采纳率:0%
帮助的人:280万
展开全部
C#中有两种数据,一是引用类型,一是值类型。引用类型做参数的时候传递的是引用,值类型传递的是拷贝
追问
请问:引用类型,值类型这个怎么区分,对象自身有没有属性表明?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yangjiale18
推荐于2018-03-29 · 超过29用户采纳过TA的回答
知道答主
回答量:214
采纳率:0%
帮助的人:49.4万
展开全部
1楼正解
从原理来看:
关键是看变量是存放在哪里的,如果是存在堆里的,就是引用类型,如果是存在栈里的就是值类型,
从最简单的角度来看,
这也是我刚开始学习的思考方式,
可以赋值为null的就是引用类型,反之,就是值类型。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shigang3116
2011-09-06 · TA获得超过143个赞
知道答主
回答量:279
采纳率:0%
帮助的人:101万
展开全部
引用
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
634153049
2011-09-06
知道答主
回答量:19
采纳率:0%
帮助的人:9.1万
展开全部
应该是引用传递吧。 dataset是引用类型来的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式