C# 常用数据结构简单总结(与C++对比)

本文简要总结了C#中的常见数据结构,包括ref和out关键字用于传递参数的方式,Array的数组概念及其与C++的区别,ArrayList作为变长数组的特点和潜在问题,以及字典数据结构与C++中unordered_map的相似性。重点讨论了这些数据结构在性能和使用场景上的特点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C# 常用数据结构简单总结(与C++对比)

首先说明, C# 中的引用即为C++中的指针。
值类型:内置数据类型,自定义的struct,不包括string。它们分配在栈上,超出作用域自动销毁。
引用类型:自定义class或数组的实例以及string为引用类型,它们有一个引用(指针)指向它们。由GC负责回收。

装箱:将值类型转换为引用类型的过程称为装箱

int i = 67;   // i is a value type
object o = i;

以上代码会在堆上创建一个i;

ref 和 out关键字

类似于C++中的&引用,减少传值时的性能消耗,主要用在struct上。但是C#中不能创建const ref,out 和ref的区别仅在于使用out时必须进行赋值

void SetToTen(out int number)
{
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值