当前位置: 首页 > news >正文

90后做受网站博客网站排名大全

90后做受网站,博客网站排名大全,国内三大it外包公司,wordpress多语言生成工具在C#编程中,变量和参数是构建程序逻辑的基础。本篇博客将深入探讨C#中的变量作用域、参数传递方式、以及一些高级特性,如in、ref、out参数,params修饰符,可选参数和命名参数等。 变量作用域 在C#中,变量的作用域分为…

在C#编程中,变量和参数是构建程序逻辑的基础。本篇博客将深入探讨C#中的变量作用域、参数传递方式、以及一些高级特性,如inrefout参数,params修饰符,可选参数和命名参数等。

变量作用域

在C#中,变量的作用域分为局部变量和全局变量。局部变量定义在方法或代码块中,它们只在该方法或代码块内可见。

栈与堆

  • : 存储局部变量和参数的内存块,会在函数进入和退出时自动管理。
  • : 存储对象实例的内存块,对象创建后返回引用,垃圾回收器会定期释放内存。

局部变量初始化

局部变量在使用前必须显式赋值,否则编译器会报错。

public static void Main(string[] args)
{int x; // 编译错误,因为x未初始化Console.WriteLine(x);
}

字段和数组元素初始化

字段和数组元素会自动初始化为类型的默认值。

private static int x;
public static void Main(string[] args)
{Console.WriteLine(x); // 输出 0,因为int的默认值是0
}

参数传递方式

按值传递(值类型)

按值传递时,参数的值会被复制到方法内部的新位置。

static void Foo(int p)
{p = p + 1;Console.WriteLine(p); // 输出 9
}

引用传递(refout

refout关键字允许按引用传递参数,可以在方法内部修改原始变量。

static void Foo(ref int p)
{p = p + 1;Console.WriteLine(p); // 输出 9
}

in参数

in参数是C# 7.2引入的特性,它允许以只读方式按引用传递参数。

static void Foo(in StringBuilder fooSB)
{fooSB.Append("test");// fooSB = null; // 编译错误,因为in参数不允许修改
}

out参数

out参数允许在方法调用之前不初始化,但必须在方法结束之前赋值。

static void Split(string name, out string firstNames, out string lastName)
{int i = name.LastIndexOf(' ');firstNames = name.Substring(0, i);lastName = name.Substring(i + 1);
}

params修饰符

params关键字允许方法接受不定数量的参数。

static int Sum(params int[] ints)
{int sum = 0;for (var i = 0; i < ints.Length; i++){sum += ints[i];}return sum;
}

可选参数

可选参数允许为参数提供默认值,调用方法时可以省略该参数。

static void Foo(int x = 23)
{// ...
}

命名参数

命名参数允许在调用方法时指定参数的名称,提高代码的可读性。

static void Foo(int x = 11, int y = 22)
{Console.WriteLine($"x = {x} y={y}");
}

引用局部变量

C# 7.3引入了引用局部变量的概念,允许通过引用类型变量的地址进行操作。

{int[] nums = { 0, 1, 2, 3, 4, 5 };ref int numRef = ref nums[2];numRef *= 10;Console.WriteLine(numRef); // 输出 30Console.WriteLine(nums[2]); // 输出 30
}

通过本篇博客,你应该对C#中的变量作用域、参数传递方式有了更深入的理解。正确地使用这些特性可以提高代码的效率和可读性。希望这些知识点能帮助你在C#编程中游刃有余。

http://www.yayakq.cn/news/42071/

相关文章:

  • 如何做好网站首页国外做任务网站有哪些方面
  • 网站优化推广外包网站建设大约多少钱
  • 理财网站开发文档网站建设基础服务
  • 如何构建网站平台html网站怎么做几个网页
  • 电子 网站模板网站建设设计咨询
  • 如何提高网站文章收录网站备案 座机号码
  • 徐州网站建设 和信开发一个app的费用是多少
  • 阜新小程序 阜新网站建设开发python语言入门
  • 做推广的网站有哪些局域网站怎么做
  • 网站是什么样的公司注册地址跟办公地址不一致
  • 郑州巩义网站建设做视频小网站犯法吗
  • 山东企业站点seo济南做网站互联网公司排名
  • 购物网站建设课程设计报告app优化网站建设
  • 池州城乡住房建设厅网站网站建设seo优化的好处
  • 做网站卖什么条件某网站建设方案
  • 如何在建设部网站查询获奖情况wamp wordpress 安装教程
  • 网站建设宁波wordpress功能修改
  • 站长工具综合查询ipwordpress模版数
  • 怎么做网站投票选举谷歌网站地图提交
  • 自己做网站怎么能被访问怎么样开发软件程序
  • 基金培训网站wordpress子页面都转到首页
  • 广州宝盈网络科技有限公司网站企业解决方案公司
  • 网站建设核心杭州开发网站的公司
  • 网站开发研究内容怎么写k8s wordpress mysql
  • 昆明网站建设首选互维ps制作网站logo
  • 临淄关键词网站优化哪家好seo 哪些媒体网站可以发新闻
  • 南通优普网站建设团队苏州seo优化排名推广
  • 在线阅读小说网站开发企业展厅设计公司名称
  • 数字镭网站开发电子商务网站建设的四个步骤
  • 最佳网站网站结构分类