设为首页收藏本站订阅更新

无忧脚本

 找回密码
 加入无忧

QQ登录

只需一步,快速开始

搜索
查看: 5090|回复: 4

[讨论] C#方法传值

[复制链接]
发表于 2011-3-10 17:49:16 | 显示全部楼层 |阅读模式
using System;
namespace Rui
{
    class Parameter
    {
        static void function(int[] ints,  int i)
        {
            ints[0] = 100;
            i = 100;
        }
        public static int Main()
        {
            int i = 0;
            int[] ints = { 0, 1, 2, 4, 8 };
            Console.WriteLine("i=" + i);
            Console.WriteLine("ints[0]" + ints[0]);
            Console.WriteLine("--------------");
            function(ints, i);
            Console.WriteLine("i=" + i);
            Console.WriteLine("ints[0]=" + ints[0]);
            return 0;
        }
    }
}
///////////
大家看看这个的结果是什么?
要是将方法改变,即function(int[]ints,ref int i),结构是多少呢?
大家讨论下关于方法传值的一些技巧和方法呗!!!!!
发表于 2011-4-19 10:45:44 | 显示全部楼层
这个是引用类型和值类型,你查下相关资料吧,数组属于引用类型,所以传递ints来修改内容的话会导致原本那个也改变,int是值类型,所以不改变,也可以强制引用的,加关键字ref
发表于 2011-12-14 13:17:51 | 显示全部楼层
数组是引用类型,函数前加ref为引用类型,否则为值类型。
发表于 2012-3-5 11:39:02 | 显示全部楼层
围观一下,我看过一个方法传值加this的方法,这是源码:public static string ToJson(this object obj)
谁给看看,我看不懂
您需要登录后才可以回帖 登录 | 加入无忧

本版积分规则

小黑屋|手机版|Archiver|无忧脚本 ( 苏ICP备05080427号 )|值班电话:027-62300445   鄂公网安备 42011102000433号

GMT+8, 2017-11-18 07:01 , Processed in 0.088458 second(s), 9 queries , Gzip On, Memcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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