Yes, the stream operator doesn't create an object. It merely reads data into an object. Therefore, it is your job to make sure you can construct a proper object before calling the stream operators.