C#Struct堆栈

Struct若其内部含有堆对象,Struct的该对象放在堆上;

Struct当做参数传递时,其堆属性作为引用传递,值属性还是作为值传递;

struct TS

{

public int[] t1;

public int t2;

}

public void TF1(TS t)

{

int[] t1 = t.t1;

t1[0] = 2;

t.t2 = 20;

}

public void Main()

{

TS ts = new TS();

ts.t1 = new int[1];

ts.t1[0] = 1;

ts.t2 = 2;

TF1(ts);

Console.WriteLine(ts.t1[0]);

Console.WriteLine(ts.t2);

}

输出:

2

2

相关推荐
JD技术委员会26 分钟前
Rust 语法噪音这么多,是否适合复杂项目?
开发语言·人工智能·rust
Hello.Reader30 分钟前
Rust 中的 `Drop` 特性:自动化资源清理的魔法
开发语言·rust·自动化
Vitalia33 分钟前
从零开始学 Rust:基本概念——变量、数据类型、函数、控制流
开发语言·后端·rust
小禾苗_1 小时前
C++ ——继承
开发语言·c++
李长渊哦2 小时前
Java 虚拟机(JVM)方法区详解
java·开发语言·jvm
进击ing小白2 小时前
Qt程序退出相关资源释放问题
开发语言·qt
烂蜻蜓2 小时前
前端已死?什么是前端
开发语言·前端·javascript·vue.js·uni-app
老猿讲编程2 小时前
安全C语言编码规范概述
c语言·开发语言·安全
软件黑马王子5 小时前
Unity游戏制作中的C#基础(5)条件语句和循环语句知识点全解析
游戏·unity·c#
shepherd枸杞泡茶5 小时前
第3章 3.3日志 .NET Core日志 NLog使用教程
c#·asp.net·.net·.netcore