Category Archives
Home > 実装技術
実装技術
- スポンサーサイト
- ...
- 2008-07-25
- 例外処理が使えない環境でコンストラクタが失敗したら...
- 以前、「例外のないC++」ということで、いろいろ考察してみたことがありました。しかし、コンストラクタが失敗したときの解決方法としては、どれもいまいちパッとしません。そこで、改めて、例外処理が使えない環境でコンストラクタが失敗したら、という問題について考えてみることにします。例外処理が使える環境でも、「例外処理を使いこなせない」、あるいは「例外処理が嫌い」といった事情からか、コンストラクタが失敗した際......
- 2008-05-05 | Comment : 0 | Trackback : 0
- RAIIイディオム
- まともな内容を書くのは約半年ぶりです。ネタはあっても、"大人の事情"というか、安易にブログに書けないことも多くて大変なのですが、何とか頑張ってみたいと思います。長い間更新していないと、過去に何を書いて、何を書いていないのか、さっぱり分からなくなってしまいますが、気にせずに進めることにします。雑誌でも定期的に同じネタを取り上げますので、それと同じようなものですね。というわけで、今回はRAII(Resource Acq......
- 2008-04-09 | Comment : 0 | Trackback : 0
- データメンバを公開するのも、時には方便
- 純粋な構造体を除き、データメンバは常に非公開にするのは、クラス設計のイロハのようなものです。しかし、時には禁忌を犯してみるのもよいのかもしれません。それは次のような理由からです。
データメンバを非公開にしている以上、オブジェクトの初期化は必ずコンストラクタによらなければなりません。しかし、コンストラクタを用いて動的に初期化する場合、そのオブジェクトを ROM に配置することは不可能になります。
......
- 2007-09-11 | Comment : 6 | Trackback : 0
- 続々・NVIパターン
- NVIパターンに関する話題は、今回でいったん終わりにします。今回は、NVIパターンそのものといえるのかどうか分かりませんが、どちらかといえばその応用的な話題です。クラスが何らかのリソース群を管理するような場合、特定のリソースを指定するのに、外部からはID番号や名前(文字列)で指定して、それを内部的にリソースを管理する構造体等へのポインタに変換するといった設計がよくあると思います。class A{public: virt......
- 2006-12-17 | Comment : 0 | Trackback : 0
- 続・NVIパターン
- 前回に引き続き、NVIパターンに関する話題です。NVIパターンが実際のプログラムでどのように使われているかを示すための例としては、標準ライブラリのstd::locale::facetからの派生クラス群があります。組み込み関係はもちろん、それ以外の開発現場でも、このファセットを扱う機会は非常に少ない気がしますが、これを機会に一度ヘッダをのぞいてみてください。今回は、NVIパターンを使うことで予防できる"つまらないミス"を取り上......
- 2006-12-16 | Comment : 0 | Trackback : 0
This Category : Next >>
C++と組み込み環境 | Page Top▲
- Navigation