首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >.NET在结构和类之间的选择

.NET在结构和类之间的选择
EN

Stack Overflow用户
提问于 2009-03-23 00:03:09
回答 5查看 467关注 0票数 4

复制: When should I use a structure instead of a class?

只是想知道是否有人可以提供一些建议或示例,说明什么时候最好在.NET类上使用结构,或者反之亦然。

我做了一些背景阅读,并理解了两者之间的区别,即结构存储在堆栈上,类存储在堆上等等。但是,没有找到一些明显的例子,其中一个将提供一个好处的另一个。

非常感谢

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-03-23 00:20:50

引用a good answer to the same question (When should I use a struct instead of a class?):

MSDN有答案:Choosing Between Classes and Structures.

基本上,这一页给你一个4项清单,并说使用一个类,除非你的类型符合所有的条件。

除非类型具有下列所有特征,否则不要定义结构:

  • 它逻辑上表示一个值,类似于原语类型(整数、双等)。
  • 它的实例大小小于16字节。
票数 4
EN

Stack Overflow用户

发布于 2009-03-23 00:05:15

使用class,除非您有非常具体的理由使用struct。由于一些特定的原因,请参阅Questions about Structs

编辑:class相比,struct的一个可能的优点是您永远不能拥有null实例。请参阅Is there a way to require that an argument provided to a method is not null?

票数 1
EN

Stack Overflow用户

发布于 2009-03-23 00:06:21

我更喜欢上课。

代码语言:javascript
运行
复制
Structure TestStruct
    Dim Name as String
End Structure

Dim x as TestStruct

If x Is Nothing Then 
'ALWAYS returns false. A class would return true. Nullability, baby.
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/671847

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档