在模块的头部,我希望声明一些全局变量以用于各种子/函数。Dim vs Private/Public
是什么
Dim x as string
和Private x as string
/Public x as string
之间的区别,当我将使用一个比其他?
在模块的头部,我希望声明一些全局变量以用于各种子/函数。Dim vs Private/Public
是什么
Dim x as string
和Private x as string
/Public x as string
之间的区别,当我将使用一个比其他?
私人和公共控制变量的范围或对象正在声明。
Private
将只允许相关模块/班/任何访问实例
public
的成员将允许在同一范围内的模块/类/无论访问任何东西。
Dim
默认为公共或私人,具体取决于您的工作内容。例如,类将默认为私有。我建议阅读封装和面向对象以获得更好的感觉。
是的,但有什么,如果你的区别使用Dim还是不? – gonzobrains
请再次阅读答案。我说暗淡的默认范围是公开还是私人,取决于你是分别在结构还是班级。 – MGZero
可以使用暗淡的默认设置的更多细节 – mattumotu
他们是不同的,但相关的东西。
Dim Statement (Visual Basic) [MSDN]告诉我们:
[点心]声明和一个或多个变量分配存储空间。
和
Dim关键字是可选的,如果指定下列任何修饰符通常被省略:公共,保护,朋友,受保护的朋友,专用,共享,阴影,静态,只读,或WITHEVENTS。
Access Levels in Visual Basic [MSDN]告诉我们:
私人(和公共,保护,朋友,保护朋友)的访问修饰符用于指定“什么样的代码有权阅读或写它。”
和
在模块级,无任何访问级别关键字Dim语句相当于一个私有声明。但是,您可能希望使用Private关键字来使代码更易于阅读和解释。
所以Private x As String
是Dim Private x As String
(但如果你键入此Visual Studio将删除DIM)
和Dim x As String
相当于Private x As String
除了在结构(它相当于Public x As String
)和接口,其中相当于声明变量是不允许的 - 见Declaration Contexts and Default Access Levels (Visual Basic) [MSDN]
不要忘了'朋友X作为String' –
这[文章] [1]有一个更好的答案。 [1]:http://stackoverflow.com/questions/5401372/difference-between-dim-and-private-inside-a-vb-net-form – gonzobrains