hereを示すように、std::unique_ptr
はNULLポインタのための2つconstexpr
コンストラクタを持っていますのstd :: unique_ptrをconstexprのコンストラクタ
constexpr unique_ptr();
constexpr unique_ptr(nullptr_t);
私はこれらの2つのコンストラクタのための2つの質問があります。
なぜ我々は2が必要なのかを?
constexpr unique_ptr(nullptr_t = nullptr);
は本当に便利
constexpr
です:私たちは同じように1を宣言することができませんか? (1)、それは確実にあると考えることの両方の引数なしのコンストラクタunique_ptr()
とするためconstexpr std::unique_ptr<int> p; // error: the type 'const std::unique_ptr<int>' of constexpr variable 'p' // is not literal because 'std::unique_ptr<int>' has a non-trivial destructor
これは同じ質問にリンクします – Dutow
@Dutow Hahahaha –
LOLのコピー/ペーストは失敗します。しかし、oldrinbの答えは、私がリンクしようとしていたものへのリンクです。 –