http://www.sufeinet.com/plugin.php?id=keke_group

苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

分布式系统框架(V2.0) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper爬虫框架(V2.7-含.netcore) HttpHelper官方出品,爬虫框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 开源的爬虫类,支持多种模式和属性 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 4293|回复: 3

[毕业生提问] 怪异的现象理解不了(c#)

[复制链接]
发表于 2015-2-27 20:18:07 | 显示全部楼层 |阅读模式
1金钱
class Program
{
static void Main(string[] args)
{
Fuck f = new Fuck(100);
f.Change(1000, ref f);
Console.Read();
}
}
struct Fuck{    public readonly int Num;    public Fuck(int value)    {        this.Num = value;    }    public void Change(int value, ref Fuck data)    {        System.Console.WriteLine(this.Num);        data = new Fuck(value);        System.Console.WriteLine(this.Num);    }} 结果
100
1000
------------------------------------------------------
去掉ref
class Program
{
static void Main(string[] args)
{
Fuck f = new Fuck(100);
f.Change(1000, f);
Console.Read();
}
}
struct Fuck{    public readonly int Num;    public Fuck(int value)    {        this.Num = value;    }    public void Change(int value, Fuck data)    {        System.Console.WriteLine(this.Num);        data = new Fuck(value);        System.Console.WriteLine(this.Num);    }} 结果
100
100
---------------------------------------------------------
class Program
{
static void Main(string[] args)
{
Fuck f = new Fuck(100);
f.Change(1000,ref f);
Console.Read();
}
}
class Fuck{    public readonly int Num;    public Fuck(int value)    {        this.Num = value;    }    public void Change(int value, ref Fuck data)    {        System.Console.WriteLine(this.Num);        data = new Fuck(value);        System.Console.WriteLine(this.Num);    }} 结果
100
100
这3个程序的结果无法理解
麻烦您给我讲讲



1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
发表于 2015-2-28 08:10:17 | 显示全部楼层
ref 关键字使参数按引用传递。其效果是,当控制权传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中。若要使用 ref 参数,则方法定义和调用方法都必须显式使用 ref 关键字


就是一个Ref的问题,这没什么难理解的吧,

另外你这代码看着真不方便,
http://www.sufeinet.com/thread-1942-1-1.html
回复

使用道具 举报

 楼主| 发表于 2015-3-5 15:48:00 | 显示全部楼层
站长苏飞 发表于 2015-2-28 08:10
ref 关键字使参数按引用传递。其效果是,当控制权传递回调用方法时,在方法中对参数所做的任何更改都将反映 ...

这不光是ref的问题
牵扯到的知识点:
1、参数引用
2、引用类型
3、值类型
4、this关键字
回复

使用道具 举报

 楼主| 发表于 2015-3-5 15:49:27 | 显示全部楼层
我想要分析的思路
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备18043678号-2)

GMT+8, 2024-11-24 11:53

© 2014-2021

快速回复 返回顶部 返回列表