Use C++ initialization list

This is the recommended approach for object initialization. The change
doesn't affect binary size (although in theory it could make it smaller).