vb.net - 模块数据可以在模块内写入,但是对于其他模块是公共的还是只读的?

时间:2017-08-17 16:19:15

标签: c# .net vb.net visual-studio

有没有办法声明模块中的数据结构可以由模块中的任何函数写入,但是只能从不同模块中的函数读取?

也许这就像在C ++中有一个类返回另一个类的只读(const)指针第一类'其内部数据结构。

2 个答案:

答案 0 :(得分:2)

您需要的是一个公共属性(只读),可以从程序中的任何位置访问,私有字段只有模块本身的范围。这是一个例子

Module myModule

   Private something As String 'This here is a Field

   'Below is the code for a read-only property
   Public Property SomethingWhichIsReadOnly As String
     'SomethingWhichIsReadOnly can be used from anywhere
     Get
        Return something         
     End Get
   End Property

   Public Function SomeFunction(ByVal value as Integer) As Boolean
      ...
      'You can use "something"(String Field declared above) in functions
      'Which can be accessed and modified only from the module itself
   End Function

End Module

此外,如果您想创建一个可以读写的公共属性,请使用

Public Property SomethingWhichIsReadOnly As String
  Get
      Return something 
  End Get
  Private Set(ByVal value As String)
      something = value 'Setting the value to the Private Field
  End Set
End Property

答案 1 :(得分:0)

这很简单!
您可以使用公共财产专用字段

  • 使用外部模块(或类别等)的公共财产
  • 使用内部的私人字段。

感谢没人