由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
DotNet版 - 觉得C#的valuetype和boxing真的是没有必要
相关主题
c# 内存管理的一个小问题Re: how to write an object into xml with
弱问c# using, try有啥用问题又来了.
C#中的Memory控制CrystalReport 问题
.Net Formatting Objects Processor - NFOP请问:关于C#和XML的问题
SOAPHow to cancel DateTimePicker event?
请问, ASP.NET 中, 2 个web form之间如何传参数?sample code needed
.Text 简易安装A Question about Session State in ASP.NET
serialization problemQ: c# datetime nullable objects
相关话题的讨论汇总
话题: c#话题: heap话题: int话题: boxing话题: c++
进入DotNet版参与讨论
1 (共1页)
b*****n
发帖数: 2324
1
CLR via C#说C++ developer不能控制object放在heap还是stack上是胡说吧。
按照C++的做法new的就在heap上不是很好嘛,new int也在heap上。
按照C#,要想create在heap上的int,要:
int x;
object o = x;
必须要copy上去,而且boxed object又多了两个overhead fields。
C#这个设计算不算一个地道败笔。
c****n
发帖数: 21367
2
编译执行加速用的吧,new在stack上开销小速度快啊

【在 b*****n 的大作中提到】
: CLR via C#说C++ developer不能控制object放在heap还是stack上是胡说吧。
: 按照C++的做法new的就在heap上不是很好嘛,new int也在heap上。
: 按照C#,要想create在heap上的int,要:
: int x;
: object o = x;
: 必须要copy上去,而且boxed object又多了两个overhead fields。
: C#这个设计算不算一个地道败笔。

b*****n
发帖数: 2324
3
也有int需要放在heap上的时候,你看明白我说什么了。

【在 c****n 的大作中提到】
: 编译执行加速用的吧,new在stack上开销小速度快啊
c**e
发帖数: 2558
4

for example?

【在 b*****n 的大作中提到】
: 也有int需要放在heap上的时候,你看明白我说什么了。
b*****n
发帖数: 2324
5
就是boxing啊
我原文不是说了吗C#的boxing很傻,而且overhead很多。
为啥说它啥,因为C++一个new int就放在heap上了,而且没有overhead,而且让
developer自己选择初始是放在heap上还是stack上。而C#的value type初始×必须×放
在stack上。

【在 c**e 的大作中提到】
:
: for example?

c**e
发帖数: 2558
6
normally you would like to take advange of the .ent
garbage collector, which manages the heap for you.
for the gc to work, the objects on the heap have to
be self-describing. so an int on the managed heap
requires additional info around it. keeping value
type objects on the stack removes this overhead and
also spares the gc from having to manage these objects.

【在 b*****n 的大作中提到】
: 就是boxing啊
: 我原文不是说了吗C#的boxing很傻,而且overhead很多。
: 为啥说它啥,因为C++一个new int就放在heap上了,而且没有overhead,而且让
: developer自己选择初始是放在heap上还是stack上。而C#的value type初始×必须×放
: 在stack上。

1 (共1页)
进入DotNet版参与讨论
相关主题
Q: c# datetime nullable objectsSOAP
大牛指教:新手List<>问题请问, ASP.NET 中, 2 个web form之间如何传参数?
C#/.Net 的垃圾回收机制 是怎么样的? .Text 简易安装
array 在java里 是一定放在heap 吗?serialization problem
c# 内存管理的一个小问题Re: how to write an object into xml with
弱问c# using, try有啥用问题又来了.
C#中的Memory控制CrystalReport 问题
.Net Formatting Objects Processor - NFOP请问:关于C#和XML的问题
相关话题的讨论汇总
话题: c#话题: heap话题: int话题: boxing话题: c++