C++相談室 part165at TECHC++相談室 part165 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト200:はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 7932-MxBP) 24/02/03 09:26:19.03 Sz70frqK0.net >>199 designated initializer も C++20 からの機能なんだけど……それは脇に置く。 この場合は集成体初期化に該当する。 C++17 から基底の初期化も集成体初期化で扱えるので child c{p}; というように初期化出来ていた。 更に C++20 では集成体初期化を丸括弧で書いても良いことになったので child c(p); とすることが許されるようになった。 201:◆QZaw55cn4c (ワッチョイ 3555-LgJ8) 24/02/03 09:46:38.23 21sfApha0.net >>198 >size_t File::accept(std::shared_ptr<Visitor> v) { return v->visit(std::make_shared<File>(this)); } > ここがJavaだと単にvisit(this)で済むからスッキリするんだけど > しかもこれmake_shared(this)だと多重開放するよね?? 多重解放(二重解放)しないことはラッパをかませて確認済みです。そう簡単に std::shared_ptr は破綻しないと信じています https://ideone.com/GUPcSu それはともかく、皆様のご意見には感謝しております。これからもお伺いさせていただいた際にはよろしくお願いいたします。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch