| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 977 人关注过本帖
标题:关于struct
只看楼主 加入收藏
独孤剑魔
Rank: 1
等 级:新手上路
帖 子:103
专家分:0
注 册:2008-8-5
收藏
 问题点数:0 回复次数:7 
关于struct
我印象之中,在c#中只有string与数组类型是引用类型,而struct是值类型,但是下面有一道题,我和老师给的答案不一样,不清楚是我记错了,还是老师给错答案了。请各位看看。


public class Text
{
    struct Point
    {
         public int x;
    }
     static void main()
     {
           Point p1,p2;
           p1.x=10;
           p2=p1;//请问这是引用传递还是值传递啊???
           p1.x=20;
           Console.WriteLine("{0}{1}",p1.x,p2.x);
     }
}

我写的是20,10,老师给的答案是20,20
我是不是可以这样认为,如果是p2.x=p1.x的话,就是值传递,而p2=p1则是引用呢???望高手指点.

[[it] 本帖最后由 独孤剑魔 于 2008-9-20 15:53 编辑 [/it]]
搜索更多相关主题的帖子: struct 
2008-09-20 10:13
gongdian
Rank: 2
等 级:论坛游民
帖 子:127
专家分:11
注 册:2008-3-1
收藏
得分:0 
的确是值传递,答案是20,10。
现在很多的老师都是混子,叫老师罢了,有的都是骗子。
2008-09-21 07:42
小仙
Rank: 7Rank: 7Rank: 7
来 自:光之谷
等 级:贵宾
威 望:39
帖 子:1812
专家分:1
注 册:2008-8-8
收藏
得分:0 
你在VS上演示下不就OK了嘛?我觉得是20,10。。。我去试下。。
2008-09-21 22:21
小仙
Rank: 7Rank: 7Rank: 7
来 自:光之谷
等 级:贵宾
威 望:39
帖 子:1812
专家分:1
注 册:2008-8-8
收藏
得分:0 
嗯,你那老师确实是个混混,是20和10。
2008-09-21 22:25
小仙
Rank: 7Rank: 7Rank: 7
来 自:光之谷
等 级:贵宾
威 望:39
帖 子:1812
专家分:1
注 册:2008-8-8
收藏
得分:0 
还有个问题,你那个Main()写错了,要大写。。。我是说哪报错来着。。。
2008-09-21 22:28
aiailhp
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-10-9
收藏
得分:0 
就是 20 10
2008-10-10 00:05
smltq
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:566
专家分:400
注 册:2008-1-21
收藏
得分:0 
p2=p1;//这是在堆中给P2分配P1的空间

简单的生活
2008-10-10 06:38
gghao
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2008-8-31
收藏
得分:0 
struct 是值类型。你声明一个变量就在堆上有空间了
p2=p1就在堆里操作所以没有引用
2008-10-10 11:53
快速回复:关于struct
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.046512 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved