c# 简单代码给解释下

[复制链接]
查看11 | 回复1 | 2008-11-13 21:05:30 | 显示全部楼层 |阅读模式
class WrappedInt
{

public int Number;
}
》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》
class Pass
{

public static void Values(int param)

{

param= 12; //这个是直接赋值的;为什么不能传递;

}

public static void Reference(WrappedInt param)

{

param.Number = 42;//这个也就是调用(引用)类wrappedint的Number而已;怎么就可以传递了??????

}
》》》》》》》》》》》》》》》》》》》》》》》》》》》》》
class Program

{

static void Entrance()

{

int i = 0;

Console.WriteLine(i);

Pass.Values(i);

Console.WriteLine(i);

WrappedInt j = new WrappedInt();

Console.WriteLine(j.Number);

Pass.Reference(j);

Console.WriteLine(j.Number);

回复

使用道具 举报

千问 | 2008-11-13 21:05:30 | 显示全部楼层
public static void Values(int param) 这个是Pass类里的一个方法,在这个方法里面已经定义了整形的param直接就给param赋值了。public static void Reference(WrappedInt param) 这个也是Pass类里的方法,而且定义了类WrappedInt类型的参数,因为类WrappedInt里面定义的是public int Number;也就是共有的,所以可以直接传过去,如果定义的是private 那么就需要写属性了,也就是get和set....
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行