Rust part10at TECHRust part10 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト559:デフォルトの名無しさん 21/05/10 13:43:11.18 FH4+0Y9S.net 多くの例外がある言語(RustやGoのpanicも含む)では、上記の例ではファイル出力とは無関係な処理でも 即座に後処理へ移動します。ですが、ここに1つの問題があり、多くは捕捉した後にほぼ「自動的に」 ディストラクタに記述された処理をスレッド毎に存在するスタックを遡って巻き戻しを行います。 (例外の反対者はこれを隠された制御フローというが、決して信頼性が低下するわけではないです、 カーネルの例外ハンドラを例に挙げれば、ただ挙動が合わない事と、多くの例外がある言語でのCPU例外の 捕捉はリカバリが不可能に近く、挙動が保証できない事でディストラクタ実行させて意味があるのかという 矛盾もあります) それ以外の例外処理は概念的にはスレッドローカルグローバル変数とifとgoto/returnの組み合わせにしか ならないので信頼性が低下したりはしません� 560:Bまた、C言語や昔の言語でgotoが嫌われていたのは、ラベルが 存在しないgotoだったりループ中のgotoだったり、プログラムのモジュール化を壊す制御であったためなども あります。try-catch-finallyとは無関係ですが、同様に可読性が悪いように見えてしまうため、冤罪にされます。 そもそもアセンブラであればJMP命令にしかならない事をいつまでもグチグチ言うのは悪い癖です 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch