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

C#入门学习笔记 #7(传值/引用/输出/数组/具名/可选参数、扩展方法(this参数))

欢迎进入这篇文章,文章内容为学习C#过程中做的笔记,可能有些内容的逻辑衔接不是很连贯,但还是决定分享出来,由衷的希望可以帮助到你。

笔记内容会持续更新~~

本篇介绍各种参数,参数本质上属于方法的一部分,所以本篇算是对方法更深度的学习。本章难度较大...

传值参数

值类型传值参数

声明时不带修饰符的形参是值参数。一个值形参对应于一个局部变量,只是它的初始值来自该方法调用所提供的相应实参。先介绍值类型的传值参数。

方法调用后的参数相当于是变量传进来的一个副本,参数的值,就是变量的初始值,两者互不干扰。如果为方法内的参数进行重新赋值的话,方法体外的原本的变量是不会改变的,下面用具体的例子进行解释。

可以看到在执行AddOne方法后,值传进来的是一个副本值,经过AddOne方法后变成了101,方法体外变量y本身的值没有受到任何影响,还是100。

引用类型传值参数

然后介绍引用类型传值参数。已经介绍过一个概念了,引用类型的变量和实例是分开的,本质上引用类型的变量存储的值是引用类型实例在堆内存中的地址,因此当引用类型变量以传值的形式传入方法的时候,如下图所示,引用类型变量引用了一个实例,当传入方法后,会创建一个副本,由于本质上数据是地址,所以创建的副本也会引用到同一个实例。

当我们对副本进行操作后,会创建一个新的对象,不会对原本的实例对象产生影响,下面用具体的例子进行解释。

http://www.xdnf.cn/news/867565.html

相关文章:

  • WPF可拖拽ListView
  • 质检 LIMS 系统数据防护指南 三级等保认证与金融级加密方案设计
  • 英国2025年战略防御评估报告:网络与电磁域成现代战争核心
  • Axios 取消请求的演进:CancelToken vs. AbortController
  • 【读代码】从预训练到后训练:解锁语言模型推理潜能——Xiaomi MiMo项目深度解析
  • 【android bluetooth 协议分析 12】【A2DP详解 2】【开启ble扫描-蓝牙音乐卡顿分析】
  • 光伏防逆流控制方案
  • .NET Core接口IServiceProvider
  • Spring Boot MVC自动配置与Web应用开发详解
  • Asp.net Core 通过依赖注入的方式获取用户
  • 全志A40i android7.1 调试信息打印串口由uart0改为uart3
  • 六种高阶微分方程的特解(原创:daode3056)
  • Java观察者模式深度解析:构建松耦合事件驱动系统的艺术
  • NC28 最小覆盖子串【牛客网】
  • 基于Axure+墨刀设计的电梯管理系统云台ERP的中保真原型图
  • Apache APISIX
  • CMake入门:3、变量操作 set 和 list
  • 深度学习项目之RT-DETR训练自己数据集
  • 通过模型文件估算模型参数量大小
  • Flask框架详解:轻量高效的Python Web开发利器
  • 深入解析Oracle SQL调优健康检查工具(SQLHC):从原理到实战优化
  • intense-rp-api开源程序是一个具有直观可视化界面的 API,可以将 DeepSeek 非正式地集成到 SillyTavern 中
  • Windows系统工具:WinToolsPlus 之 SQL Server Suspect/质疑/置疑/可疑/单用户等 修复
  • stress 服务器压力测试的工具学习
  • linux操作系统---网络协议
  • LeetCode 3370.仅含置位位的最小整数
  • 二维 根据矩阵变换计算镜像旋转角度
  • 短剧+小说网盘搜索系统(支持全网网盘转存拉新)
  • 《T/CI 404-2024 医疗大数据智能采集及管理技术规范》全面解读与实施分析
  • [ Qt ] | 与系统相关的操作(二):键盘、定时器、窗口移动和大小