use pre-increment for non-primitive types

Pre-increment/decrement can be more efficient than post-increment/decrement. Post-increment/decrement usually involves keeping a copy of the previous value around and adds a little extra code.

Issue(s) found via [cppcheck](http://cppcheck.sourceforge.net/).