模块与类型提升
vb.net吧
全部回复
仅看楼主
level 12
microroom 楼主
模块中的:
1
数据成员都默认是Private(可指定)和Shared的,函数成员都默认是Public(可指定)和Shared的,类型成员都默认是Public(可指定)的。
2
非Private成员会类型提升到包围它的名字空间中。
3
成员不能声明为Protected。
例子:
Option Explicit On
Option Strict On
Imports Microsoft{.}VisualBasic
Imports System{.}Console
Namespace ns
Friend Module m
Dim a As Integer=666
'Protected b As Integer=777 'xxx
Friend c%=888
Public d%=999
Const const_e%=5555
Friend Const fc%=123
Class Cls
End Class
Private Class PriCls
End Class
'Protected Class ProCls 'xxx
'
'End Class
Sub f()
writeline("sub ns.m.f")
End Sub
Private Sub PriF()
End Sub
'Protected Sub ProF() 'xxx
'
'End Sub
End Module
End Namespace
Module m2
Friend m2a%=1122
Sub m2f()
writeline("sub m2.m2f")
End Sub
Class m2Cls
End Class
End Module
Module Program
Sub Main()
'输出
'123
'sub ns.m.f
'1122
'sub m2.m2f
writeline(ns.fc)
Dim o As New ns{.}Cls
ns.f()
writeline(m2a)
m2f()
Dim o2 As New m2Cls
writeline
Write("Press any key to continue . . . ")
readkey(True)
End Sub
End Module
说明:
代码中的{.}都要转换成.。
2022年03月31日 08点03分 1
1