diff options
Diffstat (limited to 'slide.saty')
| -rw-r--r-- | slide.saty | 42 |
1 files changed, 19 insertions, 23 deletions
@@ -142,56 +142,56 @@ bool do_something() { } > - +frame{C: 引数で処理結果を受け取る}< - +code-block-c(`#include <stdbool.h> - -bool do_something(something* result) { + +frame{C: 処理結果または失敗を返す}< + +code-block-c(`something* do_something() { // ... if (success) { - *result = ...; - return true; + return result; } else { - return false; + return NULL; } } `); +p{ - PHP では \inline-code(`preg_match()`); など + PHP では \inline-code(`fopen()`); など } > - +frame{C: 引数で処理結果を受け取る}< + +frame{C: 処理結果または失敗を返す}< +listing{ * \good; 処理結果があるときに使える - * \good; エラーに情報を載せられる + * \bad; エラーに情報を載せられない + ** 注: 動的型付き言語の場合はその限りでない * \bad; エラーハンドリングを省略できる ** \good; 省略したとき、処理結果を使おうとすると止まる ** \bad; 省略したとき、後続の処理が進みうる } > - +frame{C: 処理結果または失敗を返す}< - +code-block-c(`something* do_something() { + +frame{C: 引数で処理結果を受け取る}< + +code-block-c(`#include <stdbool.h> + +bool do_something(something* result) { // ... if (success) { - return result; + *result = ...; + return true; } else { - return NULL; + return false; } } `); +p{ - PHP では \inline-code(`fopen()`); など + PHP では \inline-code(`preg_match()`); など } > - +frame{C: 処理結果または失敗を返す}< + +frame{C: 引数で処理結果を受け取る}< +listing{ * \good; 処理結果があるときに使える - * \bad; エラーに情報を載せられない - ** 注: 動的型付き言語の場合はその限りでない + * \good; エラーに情報を載せられる * \bad; エラーハンドリングを省略できる ** \good; 省略したとき、処理結果を使おうとすると止まる ** \bad; 省略したとき、後続の処理が進みうる @@ -209,10 +209,6 @@ void do_something() { error = 42; } } - -some_error get_error() { - return error; -} `); +p{ @@ -353,7 +349,7 @@ if (isset($err)) { `); +p{ - 回復不能なエラー。(基本的には) 捕まえられない + 回復不能なエラー。通常のエラーと同じ方法では捕まえられない } > |
