エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント1件
- 注目コメント
- 新着コメント
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
expect()よりunwrap_or_else()を使うべき場合 - Qiita
パフォーマンス上の問題から、expect()よりunwrap_or_else()とpanic!()の組み合わせを使うべき場合があ... パフォーマンス上の問題から、expect()よりunwrap_or_else()とpanic!()の組み合わせを使うべき場合がある、という話。 expect()の失敗時に表示される文字列 Option型のメソッドであるexpect()は、値がSomeの場合はその中身を取り出し、そうでない場合は引数として与えられた文字列を表示してパニックを起こします。この文字列の型は&strであるため、実行時にエラーメッセージを生成したい場合は、format!()マクロを用いて一旦String型の値を生成し、その参照を渡してやる必要があります。 例として、次のコードを実行してみます。 fn main() { foo(0); } fn foo(n: i32) { let a = bar(n).expect(&format!("n = {}", n)); println!("{}", a); } fn bar(
2018/04/10 リンク