Standardではない邪道なC++ライブラリの開発日誌
前回、文字および文字列はワイド文字を基本とすることを書きました。その後、文字列クラスをどうするかについていろいろ検討を行いました。簡単にいえば、
std::wstringをそのまま使うのか、std::wstringを一度ラッピングするのか、あるいは全く独自のクラスを使うのかについてです。
Dradnats C++ Libraryでは、文字はワイド文字を中心に扱うことにします。数年前までは、GCCでワイド文字を使いにくかったこともあり、移植性を考えるとワイド文字は避けざるを得ませんでしたが、最近では事情も変わってきました。
昨日、Dradnats C++ Libraryの開発には当初Visual C++ 2005を使うと書いたばかりですが、Visual C++ 2008でもどうにかなりそうですので、最新版にそろえるということで、Visual C++ 2008 & Boost C++ Libraries 1.35.0を使用することにします。
本日、Boost C++ Libraries 1.35.0のビルド済みライブラリをアップロードしましたが、どうやらデフォルトでは最小限のライブラリしか生成されなかったようです(それすら確認していませんでした)。さらに、TR1ライブラリの代替ヘッダ(<memory>など)もインストールされないようです。
先ほどBoost C++ Libraries 1.35.0をVisual C++ 2005でビルドしたバイナリをアップロードしましたが、せっかくなので、Visual C++ 2008でビルドしたものもアップロードしておきます。
開発を進める上で必要になるので、公開されたばかりのBoost C++ Libraries 1.35.0をビルドしました。ビルドに使用したのはMicrosoft Visual Studio 2005 Standard Editionです。
昨日2008年3月29日付でBoost C++ Libraries 1.35.0がリリースされました。Dradnats C++ LibraryでもBoost C++ Librariesを使用する予定ですので、1.35.xベースにするか1.34.xベースにするか、あるいは1.33.xベースにするのか悩むところです。
Dradnats C++ Libraryでは、クラス内部での排他制御を原則として行わないことにします。また、静的な状態を持つライブラリ要素は極力避け、関数の引数として状態保存用のオブジェクトを渡すことにします。
次のページ
>>