std::optionalとstd::shared_ptrを両方使っていると、空状態を設定するためにあっちはstd::nullopt、こっちはnullptrのように指定するので、使い分けがわずらわしいときがあります。 なにも考えず{}を指定してもよいのですが、「値初期化というのではなく空状態を指定することを示したい!」という欲求があるので、std::optionalとstd::shared_ptr両方の空状態に変換できるオブジェクトがあると便利かなと思ったりします。 #include <optional> #include <memory> struct unified_null { template <class T> operator std::shared_ptr<T>() const { return {}; } template <class T> operator std::o
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く