This came up recently on the forums and I thought it good to share. Do you see what is wrong with the following code?
Function foo() As FolderItem try beep catch NilObjectException return nil end try End Function
I’d guess that most folks would think this code is OK and that NilObjectExceptions would be caught. However, most folks would be wrong. This actually catches ALL exceptions into a variable named NilObjectException.
I’d encourage everyone to write that code as follows – so you have an explicit name for the variable and type for the exception:
Function foo() As FolderItem try beep catch exc as NilObjectException return nil end try End Function