My main motivation for having the explicitly defined constructor is so that the compiler will warn me if initialization parameters changes somehow, though with default arguments sometimes this may not work.
Ideally I'd like to avoid writing explicit constructor functions when it's unnecessary.
I should note I only have worked with C++98 for the most part I am unfamiliar with C++11, if that makes any difference here.
I got the compiler warning about -std=c++0x being required so I added the option. Wow. Compile time increased by over 4x (:42 seconds to recompile entire project vs 3:48 with c++0x). I will use the = syntax to avoid the warning.