gpt4 book ai didi

vb.net - 在VB.Net中使用Me关键字的标准

转载 作者:行者123 更新时间:2023-12-02 08:47:17 24 4
gpt4 key购买 nike

我正在寻找是否在VB.Net语法中使用(Me)关键字是否存在标准或首选方法。

目前,我知道3种使用方式(我)。

没有(Me)关键字:

Cursor = Cursors.WaitCursor

RadioButtonSortBySurname.Checked = True

LightGrid.SortColumn(2)
LightGrid.Columns(2).LastSortState = Ascending
LightGrid.SortColumn(1)
LightGrid.Columns(1).LastSortState = Ascending

Cursor = Cursors.Default

LightGrid.StatusRowText = ""
LightGrid.Select()

(我)在Using结构中:
Using Me
Cursor = Cursors.WaitCursor

RadioButtonSortBySurname.Checked = True

LightGrid.SortColumn(2)
LightGrid.Columns(2).LastSortState = Ascending
LightGrid.SortColumn(1)
LightGrid.Columns(1).LastSortState = Ascending

Cursor = Cursors.Default

LightGrid.StatusRowText = ""
LightGrid.Select()
End Using

在每个控件上使用(Me):
Cursor = Cursors.WaitCursor

Me.RadioButtonSortBySurname.Checked = True

Me.LightGrid.SortColumn(2)
Me.LightGrid.Columns(2).LastSortState = Ascending
Me.LightGrid.SortColumn(1)
Me.LightGrid.Columns(1).LastSortState = Ascending

Cursor = Cursors.Default

Me.LightGrid.StatusRowText = ""
Me.LightGrid.Select()

最佳答案

在一种情况下,当变量名不明确时,必须使用它来帮助编译器:

Sub Foo(ByVal bar As Integer)
Me.Bar = bar
End Sub

它从具有相同名称的参数中分配类中的字段。如果没有 Me.,它将为其分配参数值,该参数值可以编译,但绝不是预期的。由于vb.net不区分大小写,因此在vb.net中并不少见。否则,建议您考虑与字段名称不同的参数标识符名称,可能会很痛苦。一些程序员(和工具)倾向于始终给字段名称加一个下划线,以避免出现此问题。

但是您提出的问题只是个人喜好问题。给 Me.加上前缀有两个好处,因为它指示了作用域并缩小了读者查找声明的位置,因此有助于提高代码的可读性。这确实有助于IntelliSense弹出窗口缩小候选人列表的范围,这是我个人非常关心的功能。它是由你决定。

关于vb.net - 在VB.Net中使用Me关键字的标准,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11586545/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com