CSharp Basic Tutorial Chapter-2-7 变量和参数


variable

Stack VS Heap

StackVsHeap

Stack
每次都会进入都会有一块int被赋值
Heap
stackheapdemo

内存

memory

GC

GC

Static 字段

static

确定赋值

assignment

默认值

default
default2
defaultdemo1
defaultdemo2

参数

一个方法可以多个参数(parameters),参数(parameters)定义了必须为该方法提供的参数(arguments)
parademo

参数传递的方式

parademo

按值传递

ValuePass
ValuePassdemo

按值传递引用类型 argument

复制的是引用,不是对象
下面这个例子 输出的是test 传进去的是引用 改了内存里面的值
ValuePassdemo2

按引用传递 ref

想要按引用传递,可以使用ref 参数修饰符
refdemo
无论是引用类型还是值类型的参数,都可以按值或按引用传递
out
outdemo
outVariable
outVariabledemo1
outVariabledemo2

按引用类型进行传递的含义

当你按引用传递arguments的时候,相当于给现有变量的存储位置起了个别名,而不是创建了一个新的存储位置
referencePassDemo1
referencePassDemo2

params修饰符

params
paramsdemo1
paramsdemo2

可选参数

optioanparams
optioanparams2
optioanparams3
optiondemo1
optiondemo2
optiondemo3

命名参数

NameParams
NameParamsdemo1
NameParamsdemo2
NameParamsdemo3

ref Locals

refLocals

ref returns

可以从方法返回ref local,这就叫做ref return
refreturndemo1
refreturndemo2

var

var
vardemo1
vardemo2


文章作者: Chaoqiang
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Chaoqiang !
评论
 上一篇
CSharp Basic Tutorial Chapter-2-8 表达式和操作符 CSharp Basic Tutorial Chapter-2-8 表达式和操作符
document.querySelectorAll('.github-emoji') .forEach(el => { if (!el.dataset.s
下一篇 
CSharp Basic Tutorial Chapter-2-6 数组 CSharp Basic Tutorial Chapter-2-6 数组
数组初始化 默认元素的初始化下面例子中 一个是默认为0 一个是空字符 所以两个都是true 值类型 VS 引用类型这时候输出是 0修改point的类型 换成引用类型这时候会报异常 空值 多维数组 矩形数组 交错数组 简化数组初始化表
  目录