Example Code: Property Let v. Naked VariableForm Form1 (Startup) Option Explicit
Private Sub cmdBASProp_Click()
GTimer.StartTimer Dim n As Long For n = 1 To CLng(txtTimes.Text)
If GBASFlags.Flag Then Exit Sub Next n MsgBox Format$(GTimer.StopTimer / 1000, "##0.00")
End Sub
Private Sub cmdBASQualVar_Click()
GTimer.StartTimer Dim n As Long For n = 1 To CLng(txtTimes.Text)
If GBASFlags.Flag2 Then Exit Sub Next n MsgBox Format$(GTimer.StopTimer / 1000, "##0.00")
End Sub
Private Sub cmdBASVar_Click()
GTimer.StartTimer Dim n As Long For n = 1 To CLng(txtTimes.Text)
If Flag2 Then Exit Sub Next n MsgBox Format$(GTimer.StopTimer / 1000, "##0.00")
End Sub
Private Sub cmdCLSQualVar_Click()
Dim obj As CCLSFlags Set obj = New CCLSFlags GTimer.StartTimer
Dim n As Long For n = 1 To CLng(txtTimes.Text) If obj.Flag2 Then Exit Sub Next n
MsgBox Format$(GTimer.StopTimer / 1000, "##0.00")
End Sub
Private Sub cmdCLSProp_Click()
Dim obj As CCLSFlags
Set obj = New CCLSFlags GTimer.StartTimer Dim n As Long For n = 1 To CLng(txtTimes.Text)
If obj.Flag Then Exit Sub Next n MsgBox Format$(GTimer.StopTimer / 1000, "##0.00")
End Sub
Class CCLSFlags Option Explicit
Public Flag2 As Boolean Private m_bFlag As Boolean
Public Property Get Flag() As Boolean Flag = m_bFlag End Property BAS GBASFlags
Option Explicit
Public Flag2 As Boolean Private m_bFlag As Boolean
Public Property Get Flag() As Boolean Flag = m_bFlag End Property BAS GTimer Option Explicit
Public Declare Function GetTickCount Lib "kernel32" () As Long
Private m_lStart As Long
Public Sub StartTimer() m_lStart = GetTickCount End Sub
Public Function StopTimer() As Long StopTimer = GetTickCount - m_lStart End Function |