unique_ptr<hoge> up0(new hoge());

shared_ptr<hoge> sp0(new hoge());

と書いたときと

unique_ptr<hoge> up1 = new hoge();

shared_ptr<hoge> sp1 = new hoge();

と書いた時で
違いは生じますか?
生じるとしたらどんな違いですか?