-
534 votesanswersviews
.NET中struct和class之间有什么区别?
.NET中struct和class之间有什么区别? -
0 votesanswersviews
使用值类型作为参数时的内存位置方式是什么
我知道值类型和引用类型之间的一般区别,并且我也知道在引用类型中使用值类型时,此值类型实际上在堆上 . 例如: class ClassA{ public DateTime date1 = new DateTime(2008, 3, 1, 7, 0, 0); } 什么时候 ClassA a = new ClassA(); date1在堆上 我的问题是 如果我们将此date1用作方法中的参数,... -
3 votesanswersviews
哪里存储引用堆内存的引用类型?
简单的代码例如: Object test=new Object(); 我理解为 test 对象的内存分配到堆中 . 从MSDN引用: 引用类型的变量存储对其数据(对象)的引用 但我真的无法理解存储此变量值(引用堆数据),堆栈或堆入或其他地方的位置? -
9 votesanswersviews
在通用接口中实现可空类型
因此,在上一个问题中,我询问了如何使用公共类和宾果实现通用接口,它可以工作 . 但是,我想要传入的其中一种类型是内置的可空类型之一,例如:int,Guid,String等 . 这是我的界面: public interface IOurTemplate<T, U> where T : class where U : class { IEnumerable<T... -
0 votesanswersviews
需要对引用类型的行为进行一些澄清
我读过Difference between a Value Type and a Reference Type,在这篇文章中,作者说: 因为引用类型表示变量的地址而不是数据本身,所以将引用变量分配给另一个不会复制数据 . 相反,它会创建引用的第二个副本,它引用堆的相同位置作为原始值 基于上面的引用,我期望下面的代码将一个引用变量分配给另一个,不会复制数据,但它确实也在复制数据 . 你能帮我理解...