6
Mengapa menggunakan std :: make_unique di C ++ 17?
Sejauh yang saya mengerti, C ++ 14 diperkenalkan std::make_uniquekarena, sebagai hasil dari urutan evaluasi parameter tidak ditentukan, ini tidak aman: f(std::unique_ptr<MyClass>(new MyClass(param)), g()); // Syntax A (Penjelasan: jika evaluasi pertama-tama mengalokasikan memori untuk pointer mentah, kemudian panggilan g()dan pengecualian dilemparkan sebelum std::unique_ptrkonstruksi, maka memori tersebut bocor.) Menelepon std::make_uniqueadalah cara untuk …
96
c++
c++17
unique-ptr