私は自分の例外ライブラリをC言語用に展開しています。C(C++ではない)の例外ライブラリ
これまでのところ、私はデビッド・ハンソンさんを見てきた: http://drhanson.net/work/
しかし、私は、私が過去に利用可能な他のものを見てきました知っています。あなたは私にいくつかの追加のポインタを送ってもらえますか?
おかげで、
のsetjmp
私は自分の例外ライブラリをC言語用に展開しています。C(C++ではない)の例外ライブラリ
これまでのところ、私はデビッド・ハンソンさんを見てきた: http://drhanson.net/work/
しかし、私は、私が過去に利用可能な他のものを見てきました知っています。あなたは私にいくつかの追加のポインタを送ってもらえますか?
おかげで、
のsetjmp
シンビアンは、longjmp関数の面で( '葉' と呼ばれる)の例外を実装しました。これはC++コードでしたが、Cに変換可能です。previous post about thisがあります。
Here is one、C89と互換性があり、他のOO言語に見られるtry/catch/finallyスキーマの実装。
はXXLを見てみましょう:http://www.zork.org/xxl/
私は、以前のプロジェクトでは、それはかなり使えるました。しかし、しばらく更新されていません。
CExceptionは、Cでの単純な例外処理です。完全なC++例外処理よりもはるかに高速ですが、柔軟性が失われます。これは、setjmp/longjmpをサポートするどのプラットフォームにも移植可能です。
リンクが動作しない:/ – yuan