c# 基础

栈(Stack)和堆(Heap)

stack 和 heap 在 js 也是有 

简单理解就是变量存在 ram 的关系

值类型存在 stack, 它是一层一层的, last in first out 的概念. 

heap 是用来存引用类型的. 然后 stack 存引用地址.

闭包算是例外, 它存在 heap

 

c# 有一种叫装箱和拆箱

装箱是说值类型变成引用类型

var a = 5;

object b = a;

大概是这样一个操作. 

 

拆箱就是引用类型转成值类型 

int value = (int)b;

https://www.jianshu.com/p/e9626cb34c9b

object 和 dynamic 都是要装箱的, 而装箱性能会慢, 所以少用, 就会反射一个道理嘛. 

静态语言要动态最多也只是做个方法重载, 泛型就好. 其余的都会慢的. 

 

posted @   兴杰  阅读(61)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
点击右上角即可分享
微信分享提示