两者都是按地址传递的,使用后都将改变原来参数的数值。
 class Program
{
static void Main(string[] args)
{ int num = 1;
Method(ref num);
Console.WriteLine(num);
Console.ReadKey();
}
public static void Method(ref int num)
{
num += 5;
}
}

  

  class Program
{
static void Main(string[] args)
{ int num = 1;
Method(out num);
Console.WriteLine(num);
Console.ReadKey();
}
public static void Method(out int num)
{
num = 5;
num++;
}
}
一:关于调用前初始值
ref作为参数的函数在调用前,实参必须赋初始值。否则编译器将提示:使用了未赋值的局部变量;

out作为参数的函数在调用前,实参可以不赋初始值。

二:关于调用
在被调用函数内,out引入的参数在返回前至少赋值一次,否则编译器将提示:使用了未赋值的out参数;

           在被调用函数内,ref引入的参数在返回前不必为其赋初值。
												

最新文章

  1. RPC原来就是Socket——RPC框架到dubbo的服务动态注册,服务路由,负载均衡演化
  2. 代码验证浏览器是否支持html audio 和video
  3. Android 手机卫士12--进程管理
  4. 我的GTD中收集的书单
  5. TCP三次握手及四次挥手详细 转
  6. Android实现抽奖转盘
  7. OpenJDK和Sun/OracleJDK 区别 与联系
  8. cocos2d-x游戏开发系列教程-搭建cocos2d-x的windows开发环境
  9. BDIA增强
  10. 【WCF系列二:如何调用WCF服务】WCF入门教程(图文)VS2012
  11. Android监听WebView滑动到底部
  12. mysq开启慢查询
  13. 在ubuntu16.04中初次体验.net core 2.0
  14. Spring Cloud构建微服务架构(六)高可用服务注册中心
  15. WOSA/XFS PTR Form解析库—xfsptrdata.h
  16. 20155213 2016-2017-2 《Java程序设计》第九周学习总结
  17. css3导航hover悬停效果
  18. Swift - 获取状态栏一些信息
  19. 软件工程firstblood
  20. 1.openldap介绍

热门文章

  1. Animator动画XML实现
  2. 持续集成和部署工具GOCD
  3. 阶段5 3.微服务项目【学成在线】_day09 课程预览 Eureka Feign_07-Feign远程调用-Feign测试
  4. iis启动异常 0x80072749
  5. Java使用Apache Commons Exec运行本地命令行命令
  6. Touchpal实习技术栈和总结
  7. Java 23中设计模式
  8. requirejs r.js 打包报错paths fallback not supported in optimizer please provide a build config path override for jquery
  9. Flink中API使用详细范例--window
  10. element form 校验数组每一项