Groups
Groups
Sign in
Groups
Groups
日本Androidの会
Conversations
About
Send feedback
Help
C,C++ランタイムライブラリの制限事項
257 views
Skip to first unread message
koba
unread,
Oct 23, 2008, 10:36:45 PM
10/23/08
Reply to author
Sign in to reply to author
Forward
Sign in to forward
Delete
You do not have permission to delete messages in this group
Copy link
Report message
Show original message
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to 日本Androidの会
kobaです。
AndroidでC,C++を使ってミドルウェアやネイティブメソッドを書くときには標準の
ランタイムライブラリ(bionicという名前がついている。)を使いますが
これには大きな制限があります。
$(TOP)/bionic/libc/CAVEATS
の中に以下のようなことが書かれています。
おおむねPOSIXに準拠するが以下のような機能はサポートしないことを決めた。
- C++の例外はサポートしない。無駄に大きくて遅いコードになるので組み込みシステム
には向かないからとのこと。
- pthreadのキャンセル機能はサポートしない。
- ロケールやワイドキャラクタはサポートしない。国際化対応には代わりにICUを使う。
- 現時点ではマルチユーザのアカウントに関連する機能はスタブになっている。
C++の例外をサポートしないことにともなってC++の標準テンプレートライブラリ(STL)が
使えません。libstdc++.so の中をのぞいてみるとスカスカです。
リッチな機能が必要なプログラムはJavaで書けということですね。潔い割り切りです。
どうしても必要なら自分でライブラリを用意して使えばいいわけですし。
Reply all
Reply to author
Forward
0 new messages