案例1:

 static void Main()
{
int[] ary = { , , , };
int numLargerThan10,numLargerThan100,numLargerThan1000 ;
Proc(ary, out numLargerThan10, out numLargerThan100, out numLargerThan1000);
Console.WriteLine("有{0}个数大于10,有{1}个数大于100,有{2}个数大于1000",numLargerThan10,numLargerThan100,numLargerThan1000);
Console.Read();
} static void Proc(int[] ary, out int numLargerThan10, out int numLargerThan100, out int numLargerThan1000)
{
numLargerThan10 = ;
numLargerThan100 = ;
numLargerThan1000 = ;
foreach (var a in ary)
{
if (a > )
numLargerThan1000++;
else if (a > )
numLargerThan100++;
else if (a > )
numLargerThan10++;
}
} 输出结果:
有2个数大于10,有1个数大于100,有1个数大于1000

案例2:

class Program
{
//使用out后必须对变量赋值
public void TestOut(out int x, out int y)
{
x = ;
y = ;
}
//此时传进来的值分别为x1:10,y1:11,输出之后的x1的值为2 public void TestRef(ref int x, ref int y)
{
//引用剪剪那句话传进来的是猪,出来的可能是头牛(很精辟!)
x = ; }
static void Main(string[] args)
{
int x;
int y;
Program P1 = new Program();
P1.TestOut(out x,out y);
Console.WriteLine("x={0},y={1}", x, y);
//在使用之前ref必须对变量赋值
int x1 = ;
int Y1 = ;
P1.TestRef(ref x1,ref Y1);
Console.WriteLine("x1={0},y1={1}", x1, Y1);
}
} 输出结果:

x=1,y=2
x1=2,y1=11

 

C#中方法中 ref 和 out的使用的更多相关文章

  1. WordPress 在function.php 文件中方法中the_XXX方法失效

    最近在使用WP给客户做一个企业网站,却出现从未遇到的问题. 事件是这样子的:我在function.php文件里写了一个根据分类ID获取文章的文章,因为该方法里的html元素是在多个页面共用的 但我在i ...

  2. java中方法中声明三个点“...”作用

    public class Test {  public static void main(String[] args) {   String str[] = {"s"," ...

  3. C#方法中参数ref和out的解析

    一.C#方法中参数类型 有4种参数类型,有时候很难记住它们的不同特征,下图对它们做一个总结,使之更容易比较和对照. 二.C#方法中的参数 1.值参数 使用值参数,通过复制实参的值到形参的方式把数据传递 ...

  4. C#方法中三个重要的参数:out、ref、params

    备注:适用于初学者,自学于传智播客. 1.out参数. 概念:如果在一个方法中,返回多个相同类型值的时候,可以考虑返回一数组.但是返回多个不同类型值的时候,返回数组显然不能解决问题,这时就引入out参 ...

  5. C#方法中的ref和out

    ref        通常我们向方法中传递的是值.方法获得的是这些值的一个拷贝,然后使用这些拷贝,当方法运行完毕后,这些拷贝将被丢弃,而原来的值不将受到影响.此外我们还有其他向方法传递参数的形式,引用 ...

  6. C#中out和ref之间的区别【转】

    首先:两者都是按地址传递的,使用后都将改变原来参数的数值. 其次:ref可以把参数的数值传递进函数,但是out是要把参数清空,就是说你无法把一个数值从out传递进去的,out进去后,参数的数值为空,所 ...

  7. C#中方法的参数的四种类型

    C#中方法的参数有四种类型:       1. 值参数类型  (不加任何修饰符,是默认的类型)       2. 引用型参数  (以ref 修饰符声明)       3. 输出型参数  (以out 修 ...

  8. C#中out和ref之间的区别

    首先:两者都是按地址传递的,使用后都将改变原来参数的数值. 其次:rel可以把参数的数值传递进函数,但是out是要把参数清空,就是说你无法把一个数值从out传递进去的,out进去后,参数的数值为空,所 ...

  9. C#中out和ref使用

    1.out必须在方法中为其赋值,在调用的时候必须在变量的前面加上out关键字,侧重输出. 2.ref修饰方法的参数,在调用的时候必须在变量的前面加上ref关键字,可以修改其值也可以不修改,侧重修改. ...

随机推荐

  1. ThickBox弹出框的使用方法

    原文发布时间为:2009-08-22 -- 来源于本人的百度文章 [由搬家工具导入] 请访问:http://www.blueidea.com/articleimg/2007/12/5182/tickb ...

  2. JS读取/创建本地文件及目录文件夹的方法

    原文链接:http://www.cnblogs.com/ayan/archive/2013/04/22/3036072.html 注:以下操作只在IE下有效! Javascript是网页制作中离不开的 ...

  3. python:virtualenv的使用

    安装virtualenv 使用pip安装:pip install virtualenv virtualenvwrapper 其中virtualenvwrapper是virtualenv的扩展工具,用于 ...

  4. mariadb 集群使用

    集群启动问题 在kvm虚机下,启动mariad,日志报如下错误: :: [Note] /usr/libexec/mysqld: Shutdown complete :: mysqld_safe mys ...

  5. LeetCode OJ--Copy List with Random Pointer **

    https://oj.leetcode.com/problems/copy-list-with-random-pointer/ 灵活的指针链表应用. 每个节点有两个指针next,random,对本链表 ...

  6. TCP/IP握手协议

    转自:http://www.js123.net/t/n/n/2013/4/28/n_272.shtml 这篇介绍的也很棒:http://www.cnblogs.com/rootq/articles/1 ...

  7. CodeForces 702B Powers of Two【二分/lower_bound找多少个数/给出一个数组 求出ai + aj等于2的幂的数对个数】

    B. Powers of Two   You are given n integers a1, a2, ..., an. Find the number of pairs of indexes i,  ...

  8. Algorithm | Random

    随机生成[0,n)中不重复的m个数. class Random { public: Random(int n, int m):n(n), m(m) {} void generate() { srand ...

  9. Sharing Cookies --AtCoder

    题目描述 Snuke is giving cookies to his three goats.He has two cookie tins. One contains A cookies, and ...

  10. httperf+autobench测试web应用

    测试性能相关的概念理解 httperf使用 主页:  http://www.hpl.hp.com/research/linux/httperf/ 下载: http://httperf.googleco ...