Perl開発チームは6月22日、「Perl 5.28」を公開した。Unicode 10のフルサポートを始め、多数の機能が加わっている。 Perl 5.28は2017年5月に公開されたPerl 5.26に続く5系の最新版。5系そのもののリリースは1994年にさかのぼる。なおPerl開発チームは5系と互換性のないPerl 6を2015年末に公開している。 本バージョンでは、2017年に登場したUnicode 10.0を完全サポートした。また、「-i」オプションを使ったファイル内容の置換処理の手順が変更され、従来は処理開始時に即座に入力ファイルが削除もしくはリネームされていたのが、新たにファイル出力が完了して閉じられるまで入力ファイルは変更されずに保護されるようになった。 バージョン5.22で導入された「&.」や「|.」、「^.」。「~.」といった文字列向けビット演算子および「&」や「|」、「^
JNI関連の話が続きます。 今日は短いですが、JNIとC++例外について。 最近ではAndroid NDKもC++の例外(やRTTI)に対応していて、そのおかげで例外が必要なSTLなどのライブラリを自由に使えるようになっています。しかし、Java側はC++の例外を理解してくれないので、もしJNIを介した関数がネイティブ領域で例外をキャッチし損ねると、すぐにSegmentation Faultで落ちます。 解決策としては、JNIから呼び出されたC++側の内部処理を、noexceptな関数に閉じ込めてしまえばよいわけです。もちろんエラーが発見できないのもまずいので、JNIを使ってJava側の例外に変換してしまいます。 JNIEXPORT void JNICALL Java_Foo_bar (JNIEnv* env, jobject thisj) { jni_util::convertExcep
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く