传值(by value)与传址(by reference)分别为普通传递参数方式与ref声明方式,传址方式在使用前需要ref关键词修饰;out为输出返回传递,与ref相同之处较多,其重要区别是在上一节讲到的ref在被引用方法中必须被初始化;out在被引用方法中一定要有返回值。
复制代码 代码如下:
using System;
/******************************
* Chapter:C#难点逐个击破(一)
* Author:王洪剑
* Date:2010-1-15
* Blog:http://www.51obj.cn/
* Email:walkingp@126.com
* Description:重点讲解输出参数out
* ***************************/
namespace TestOut
{
class Program
{
/// <summary>
/// out的输出值、返回值
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
static string OutResultMethod(out string name)
{
string _name = "Wang Hongjian";
name = _name;
string __name = "Zheng Zi";
return __name;
}
static void Main(string[] args)
{
string _name = "Zhang Yu";
Console.WriteLine("调用前:{0}", _name);
string result= OutResultMethod(out _name);
Console.WriteLine("调用后:{0}",_name);
Console.WriteLine("返回结果:{0}",result);
Console.ReadKey();
}
}
}
运行结果:
out在实际项目中使用较多,这是因为out可以返回多个值
复制代码 代码如下:
class Program
{
/// <summary>
/// out的输出值、返回值
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
static string OutResultMethod(out string name,out string password)
{
string _name = "Wang Hongjian";
name = _name;
string _password = "123456";
password = _password;
string __name = "Zheng Zi";
return __name;
}
static void Main(string[] args)
{
string _name = "Zhang Yu";
string _password;
Console.WriteLine("调用前:{0}", _name);
string result = OutResultMethod(out _name, out _password);//多个参数传递
Console.WriteLine("调用后:{0}",_name);
Console.WriteLine("返回结果:{0}",result);
Console.ReadKey();
}
}
联想多个参数,你一定想到了使用数组吧,不错,使用数组是个很好的方式,数组本身把同一类型的参数打包“封装"为一个对象传递给方法,这样可以简化多参数方法的编写,还能实现类似重载的效果。
复制代码 代码如下:
static void OutArrayMethod(out string[] strArr)
{
int i = 0;
string[] _strArr = new string[10];
while (i < _strArr.Length)
{
_strArr[i] = "第" + i + "个成员";
i++;
}
strArr = _strArr;
}
static void Main(string[] args)
{
string[] _strArr=new string[10];
OutArrayMethod(out _strArr);
foreach (string str in _strArr)
{
Console.WriteLine(str);
}
Console.ReadKey();
}
运行效果:
源码下载
相关推荐:
在线AI文章生成:智能写作的无限可能
怎么用AI缩写文章,轻松提高效率的全新方法
seo系列什么意思,seo的分类 ,que n ai je
主题导航-引领互联网世界的智慧之路,大渡口网站建设方案
文章去AI回归创作的本真之美
SEO网:让你的数字营销更加精准高效,开启网络引流新时代,丰县互联网网站推广优势
自动AI写文章:轻松创作时代的全新利器
WPJam:打破网站管理的壁垒,打造极致用户体验,广东谷歌seo工具
Bing学术搜索结果不显示时间?如何解决这一问题,提升学术研究效率!,ai怎么参考线
SEO观察:2025年搜索引擎优化的新趋势与机遇,seo2是什么状态
SEO职位:数字营销的核心,开启职业新高峰,汕尾网站建设推广厂商
如何快速写出高质量的AI文章:从入门到精通
seo需要保持什么心态,seo的要求 ,ai83562
SEO好吗?助力网站成功的关键之道,网站优化方案范文怎么写
ChapGPT免费爬墙,轻松访问全球互联网资源!,蜜桃ai插画
ChatGPT:人工智能对话新时代的领航者,ai音响华为还是小米好
AI自动读文:让阅读更轻松、更高效的智能革命,寄ai空
ChatGPT诞生背景:人工智能如何突破语言的边界,ai辅助市场调研
ChatGPT免费用户每天的使用限制:如何高效利用,突破困境!,花花制作ai
seo进阶买什么书运营,seo入门难吗 ,没有ai软件怎么打开ai图片
seo追词是什么,seo词条 ,52580609AI
SEO与网络推广机构:如何选择最适合你的数字营销合作伙伴,ai写作软件性价比高吗
一键创作,助你轻松实现创意梦想,最低价刷粉网站推广
未来写作新模式文章撰写AI如何助力内容创作
seo软文用什么论坛,seo软文是什么意思 ,爱字幕的AI变脸不见了
SEO基础知识解析:如何提升网站排名,助力企业成长,毕节企业建设网站
SEO架构:提升网站流量的核心策略,东营南江全平台营销推广
优化投入,让企业更具竞争力,怎样推广营销方案
用AI征文工具,轻松创作出精彩文章!
SEO优化中怎么找关键词:全面解析与实战技巧,ai2002.4.8
SEO考核:如何通过精准的SEO优化提升网站排名与流量,茶艺营销推广方案怎么写
摘要AI生成:高效工作的新时代利器
SEO在广告领域的深度解析:如何利用SEO提升广告效果,网文写作ai工具
ChatGPT登录503错误?轻松解决,快速恢复畅享智能体验!,ai怎么加植物材质效果
互联网资源的无限潜力:如何利用数字世界为个人和企业创造价值,信阳网站建设正规公司
SEO舆情:如何通过有效的舆情管理提升企业品牌形象,seo推广外包提高收录
SEO全站优化:打造强大网站排名的必备利器,AI论文写作的优点
SEO站群:打造强大网络营销引擎,助力企业快速提升排名与流量,seo网站排名案例
URL泄露:如何防止信息泄露带来的严重后果,抖音推广营销服务多少钱
文字写作AI生成工具:让创作更简单、更高效
SEO出来,打破流量瓶颈,助力企业增长的关键策略,南昌营销推广代理商电话
AI助手推进:智能化时代的企业革命,ai改变图片颜色
SEO文案:如何通过巧妙布局提升网站排名,吸引更多流量,娄底网站建设工作文案
AI一键生成文章,写作新境界
优化原理:提升效率、创新突破的核心法则,印刷包装推广有哪里网站
SEO教你如何快速提升网站排名,打破竞争壁垒!,本溪seo优化排名公司
Bing搜索不能预览了?搜索引擎的新变革与挑战,ai制作一张窗花
用AI优化文章,轻松提升内容质量与创作效率
怎样用AI写文章?快速高效创作新技能!
SEO建站,开启网站优化的全新篇章!,网络营销推广合作方式