技術

C# try~catch~finallyの流れ

凄く基本的な事だけど、try〜catch〜finallyを使うときに、catch句でreturnしてやるとfinallyの中身は実行されるのか悩んで検索してしまったので備忘のために書いておきます。

結論から言うと、catch句の中にreturnがあってもfinallyは必ず実行される
[csharp]
try
{
throw new Exception();
return true;
}
catch(Exception ex)
{
return false;
}
finally
{
Console.WriteLine("テストです。");
}
[/csharp]

上記のようなコードの場合、例外をキャッチして、return false;を行う前に、finally句の「テストです」の出力が行われる。まあ当然と言えば当然か。

ということで、確保したメモリもfinally内で解放してあげる事で大丈夫そうかな。finally句でreturnしてしまうといろいろと面倒そうなのでやらない方がいいっぽい?その辺は未検証です。時間が出来たら色々と検証してみたい。

Sponsored Link

おすすめ記事

1

29歳で地元・愛媛のSIerから、東京の会社のエンジニアに転職し愛媛からリモートワークで働いています。転職をするきっかけや転職活動中にやったことなどをまとめました。

2

2015年に再結成をした四国最強のロックバンド ジャパハリネット のライブを最大限に楽しむためのポイントを紹介します!

3

大好きなディズニーをテーマにして結婚式を挙げました。少しこだわって準備をすることで結婚式が忘れられないものとなりました。トゥデイ風のメニュー表やパスポート風名前カードなど、ゲストにも喜んでもらえたディズニーテーマの結婚式にするために準備したものを紹介します。

4

大好きなディズニーをテーマにして結婚式を挙げました。少しこだわって準備をすることで結婚式が忘れられないものとなりました。ゲストにも喜んでもらえたディズニーテーマの結婚式に利用したグッズを紹介します。少しのこだわりで最高の結婚式にしましょう。

5

大好きなディズニーをテーマにして結婚式を挙げました。少しこだわって準備をすることで結婚式が忘れられないものとなりました。BGMをしっかりと準備することで一気にディズニーの雰囲気が出てきます。実際に結婚式で利用したBGMを紹介します。

-技術
-

© 2025 ファンキーブログ Powered by AFFINGER5