Четверг, 02 Июля 2015 г. 10:20
+ в цитатник
Вот в этом классе, заботливо :) предложенным \\\\
17840035,
встретился такой вот код:
Friend Function SetEOF(Optional ByVal p_lBytes& = -1, _
Optional ByVal p_enOffset As CFile_SeekOffsets = 0) As Boolean
Dim lReturn As Long
If (IsOpen = False) Then Exit Function
If ((p_lBytes <> -1) And (p_enOffset = 0)) Then Exit Function
If (p_lBytes <> -1) Then _
If SeekTo(p_lBytes, p_enOffset) = False Then Exit Function
lReturn = SetEndOfFile(m_hFile)
SetEOF = (lReturn <> 0)
' который я привел к такому виду
'
If (IsOpen) Then
If Not (p_lBytes = -1) Then
If Not (p_enOffset = 0) Then
If Not SeekTo(p_lBytes, p_enOffset) Then
Exit Function ' *** EXIT ***
End If
End If
End If
lReturn = SetEndOfFile(m_hFile)
SetEOF = (lReturn <> 0)
End If
End Function
Есть ли возможность упростить его дальше, чтобы после цепочки проверок осталась только исполняемая часть, без этой дурацкой Exit Function?
Как я ни крутил - не получается :(
Мне жуть так не нравятся эти условные переходы в принципе и я постоянно вступаю в эти грабли. Поэтому стараюсь избавиться. Или, на худой уж конец - декорировать, чтобы в глаза бросалось.
.
http://www.sql.ru/forum/1164114/uprostit-vyrazhenie
-
Запись понравилась
-
0
Процитировали
-
0
Сохранили
-