O'Reilly logo
  • Ben Medina thinks this is interesting:

use a separate statement to create the Widget and store it in a smart pointer

From

Cover of Effective C++: 55 Specific Ways to Improve Your Programs and Designs, Third Edition

Note

Today, that separate statement is in a function:
make_unique
make_shared
makeRefCnt
So always use those in preference to “raw” new.