Monthly Archives

Home >2006年04月

2006-04

スポンサーサイト
...
----- | スポンサー広告
要因コードは例外の代わりになるか
返却値、または引数として参照渡し(ポインタでもよい)変数を使って、例外の要因コードを呼び出し元に返す方法は、C言語では最も一般的です。仮に例外処理を使う場合でも、高速に処理する必要がある場合や、割と普通に発生する事象に対応するには、やはりこの方法を用いることになると思います。ところが、この方法にもいくつかの弱点があります。ざっと列挙してみると、コンストラクタや多重定義された演算子では返却値を返せな......
04-24 | 例外のないC++ | Comment : 0  | Trackback : 0 
テンプレートを変更しました
久々にテンプレートを変更してみました。横幅が目一杯取れるようになりましたので、サンプルプログラムが更に見やすくなったと思います。......
04-21 |  | Comment : 0  | Trackback : 0 
longjmpは例外の代わりになるか
前回列挙した例外に変わる方法の順序とは異なりますが、最も例外処理に近いlongjmpについて、最初に考察してみたいと思います。例外処理におけるthrowも、longjmpも、関数の枠組みを越えて大域分岐する点では同じです。決定的に違うのは、分岐途中にある自動オブジェクトのデストラクタを呼び出すかどうかです。この一点を除けば、setjmpとlongjmpを使って、例外処理と同様の機能を作成することも不可能ではありません。では、Java......
04-13 | 例外のないC++ | Comment : 1  | Trackback : 0 
例外の代わり
言語機能としての例外処理を使わない場合、何らかの方法を用いて例外的な事象を通知することになります。例外に代わる方法としては、次のようなものが考えられます。返却値として要因を表す値を返す。あるいは値の格納先を指すポインタを引数として渡してもよい。コールバック関数を登録する。シグナル処理ルーチンやμITRONのタスク例外処理ルーチンでもよい。errno、またはそれと同等の静的オブジェクトを使用する。フックルーチ......
04-12 | 例外のないC++ | Comment : 0  | Trackback : 0 

C++と組み込み環境 | Page Top▲

Navigation
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。