Should I be using them all? Well, I'm only thinking about using exceptions - right now I'm using assert to test for conditions that must be met and are "never" going to be false, leaving return codes for everything else.
Thoughts? Should I use exceptions? Am I abusing any of this?