nullopt vs nullopt_t