手机
当前位置:查字典教程网 >编程开发 >C#教程 >c#栈变化规则图解示例(栈的生长与消亡)
c#栈变化规则图解示例(栈的生长与消亡)
摘要:栈的变化规则:1、方法调用会导致栈的生长,具体包括两个步骤:一、插入方法返回地址(下图中的Fn:);二、将实际参数按值(可以使用ref或ou...

栈的变化规则:

1、方法调用会导致栈的生长,具体包括两个步骤:一、插入方法返回地址(下图中的Fn:);二、将实际参数按值(可以使用ref或out修饰)拷贝并插入到栈中(可以使用虚参数访问)。

2、遇到局部变量定义会向栈中插入局部变量。

3、遇到return语句会导致栈消亡,一直消亡到方法返回地址,并把return的返回值设置到方法返回地址中。

4、这里先不考虑中括号导致的栈的消亡。

c#栈变化规则图解示例(栈的生长与消亡)1

复制代码 代码如下:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace StackAndHeapStudy

{

unsafe class Program

{

static void Main(string[] args)

{

var test = new TestClass();

SetX(test);

Console.WriteLine(*test.X);

Console.WriteLine(*test.X);

}

private static void SetX(TestClass test)

{

var X = 10;

test.X = &X;

}

}

unsafe class TestClass

{

public int* X;

}

}

【c#栈变化规则图解示例(栈的生长与消亡)】相关文章:

Repeater控件绑定的三种方式

c#的异或运算符介绍

c# 通过经纬度查询 具体的地址和区域名称

c# dataTable 合并两个列到一个新列中的简单实例

在Framework 4.0中:找出新增的方法与新增的类(二)

C# 对文件与文件夹的操作包括删除、移动与复制

c#构造初始化的顺序浅析

C#中接口(interface)的理解

基于反射解决类复制的实现方法

C# 格式化字符首字母大写的方法

精品推荐
分类导航