Vb.net 在哪里保存结构:类、模块还是无?

Vb.net 在哪里保存结构:类、模块还是无?,vb.net,class,module,structure,Vb.net,Class,Module,Structure,这纯粹是一个关于VB.NET结构的编码实践问题。你在哪里放一个 举个例子,我创建了一个结构,目的很简单,就是保持信息的有序性。我希望这个结构是独立的,不属于任何类,这样我就不必通过SomeClass.MyStructure访问它,而只需MyStructure。那么,我是否将它保存在一个单独的类中,并将其导入到我的命名空间中?我是否将其保存在模块中(本质上是静态类)?我是否只需要制作一个单独的VB.NET代码文件,并将其放置在那里(我希望它位于一个单独的文件中)。为了澄清,我需要整个应用程序都能访

这纯粹是一个关于VB.NET结构的编码实践问题。你在哪里放一个

举个例子,我创建了一个结构,目的很简单,就是保持信息的有序性。我希望这个结构是独立的,不属于任何类,这样我就不必通过
SomeClass.MyStructure
访问它,而只需
MyStructure
。那么,我是否将它保存在一个单独的类中,并将其导入到我的命名空间中?我是否将其保存在模块中(本质上是静态类)?我是否只需要制作一个单独的VB.NET代码文件,并将其放置在那里(我希望它位于一个单独的文件中)。为了澄清,我需要整个应用程序都能访问这个结构,而不仅仅是一个类


在这种情况下,您通常做什么?

结构是一种类型,很像类


所以,是的,把它放在一个单独的文件中。然后它将是“在名称空间中”,项目默认的名称空间。

这与您的问题有些无关,但在大多数情况下,您应该定义一个类来存储信息,而不是一个结构。我同意,但这个结构不需要任何方法、getter、初始化或类似的东西。这只是在类和函数之间传递数据的一种方便方法,特别是向线程传递数据,因为它们只接受一个参数。这并不是决定何时使用结构和类的最佳方法。我有更多的信息。重要的是结构具有值类型语义,而类具有引用类型语义。您也可以轻松地将包含公共字段的类的实例作为参数传递给方法。这很有意义,但我不确定是否需要一个类的全部复杂性来存储和传递七个短字符串。我确实明白你关于值类型语义的观点,我没有意识到存在这样的差异。谢谢你的意见。不过这就是问题所在。您用类描述的“复杂性”与其说是真实的,不如说是想象的。结构可以有方法、属性(getter/setter)、初始值设定项甚至构造函数,就像类一样。你可以根据你的结构定义,把单词结构改成class,所有的事情都会以同样的方式进行。我不想在这里争论,但你不是第一个对差异感到困惑的人!你所有的A最后都带着严肃的口音。@Cody:是的,在iPad上打出来的。愚蠢的砖头。