0

我曾经有一个包含大约 1800 个公共共享字符串的公共类——有点像我的常量库:

Public Shared ReadOnly NLS_ALREADY_IN_USE_QUERYNAME As String = "AlreadyInUseQueryName"

现在我想为每个元素存储更多信息,并使用适当的构造函数将它们更改为“As MyClass”,该构造函数从我之前使用的定义中获取字符串:

Public Shared ReadOnly NLS_ALREADY_IN_USE_QUERYNAME As QNLSDefinition = New QNLSDefinition("AlreadyInUseQueryName", "Deutsch", "English")

问题是这些“对象”虽然是共享的,但并没有自动实例化。String 显然是“立即实例化的”。

有什么最佳实践吗?

4

1 回答 1

1

您可以为该类创建一个构造函数,然后在应用程序中一次在构造函数中实例化所有静态变量:

Class Constants 

   Public Shared ReadOnly NLS_ALREADY_IN_USE_QUERYNAME As QNLSDefinition

   'Constructor
   Sub New()

      NLS_ALREADY_IN_USE_QUERYNAME = New QNLSDefinition("AlreadyInUseQueryName",  "Deutsch", "English")

   End Sub

End Class

然后你去你的应用程序构造函数

Sub New()
   InitializeComponent()
   'Instantiate shared variables
   Dim const as new Constants
 End Sub()
于 2013-10-03T08:31:38.700 回答