O
Omh
Доброго дня разработчикам!
Как известно, у нормального лотусного программиста функция выглядит так:
Сам errorhandler может немного отличаться, я про саму конструкцию.
Но при этом внутри ф-ии иногда используется конструкция вида
Хотел поинтересоваться, кто и когда использует вторую конструкцию и вообще стоит ли её использовать.
Что бы не быть голословным приведу примеры, что зачастую ставлю внутрь "On Error Resume Next":
1. Set doc = db.GetDocumentByID/UNID(ID) (ну это у меня вынесено в отдельную ф-ию)
2. Call Dc.AddDocument(doc)
3. MkDir
4. Kill
5. RmDir
6. Dir
Иногда использую такую конструкцию (может кому пригодиться):
Вообщем, вопрос таков: кто для чего испрользует эти конструкции, стоит ли вообще их использовать и где кончается нормальная практика и начинается злоупотребление?
Спасибо!
Как известно, у нормального лотусного программиста функция выглядит так:
Код:
Function Function_name
On Error Goto Errh
'Тело функции
Exit Function
Errh:
Call ErrHandler
Exit Function
End Function
Но при этом внутри ф-ии иногда используется конструкция вида
Код:
On Error Resume Next
'Потенциально опасная операция
On Error Goto Errh
Что бы не быть голословным приведу примеры, что зачастую ставлю внутрь "On Error Resume Next":
1. Set doc = db.GetDocumentByID/UNID(ID) (ну это у меня вынесено в отдельную ф-ию)
2. Call Dc.AddDocument(doc)
3. MkDir
4. Kill
5. RmDir
6. Dir
Иногда использую такую конструкцию (может кому пригодиться):
Код:
On Error Resume Next
Error 1001
'Потенциально опасная операция
On Error Goto Errh
If Err <> 1001 Then 'Потенцально опасная операция таки вывалилась :)
Вообщем, вопрос таков: кто для чего испрользует эти конструкции, стоит ли вообще их использовать и где кончается нормальная практика и начинается злоупотребление?
Спасибо!