auto cc = std::shared_ptr<Customer>(new Customer(customer));
(the only difference is that make_shared might be more efficient because it can do a single memory allocation and store the reference counters together with the object)
In other words, it creates a heap allocated copy of customer.