C++

「Boost.勉強会 #3 関西」で「エラーハンドリング」の発表をしてきました。

発表資料等については http://d.hatena.ne.jp/youandi/20101023/p1 とか http://d.hatena.ne.jp/faith_and_brave/20101025/1287979418 あたりを漁ってください。 発表について 前回の反省から今回は早めに動き出していたものの、発表内容で欲をかき過ぎたせ…

『プログラミングの魔導書 〜Programmers' Grimoire〜 Vol.1 「Construct the World, C++」 』の発刊に向けて

プログラミングの魔導書 〜Programmers' Grimoire〜 Vol.1 「Construct the World, C++」「プログラミングの魔導書」の情報公開 - Faith and Brave - C++で遊ぼうまだ発刊されたわけではないようですが、まずはここまで漕ぎ着けたことに対して、おめでとうご…

バグベアードを更新しました。

http://tricklib.com/cxx/ex/bugbeard/2010-02-14 以下の点を修正。 #include <sys\stat.h> を #include <sys/stat.h> に修正。(ご指摘、感謝) 一部 BUT_T() が使用されていなかった箇所に BUT_T() を適用。(ご指摘、感謝) bug_get_winver() を Windows 7 などにも対応した最新の状態</sys/stat.h></sys\stat.h>…

JIS X 3014 : 2003 盗作疑惑の真相

C++

以前、cppll でもこのブログでも触れた JIS X 3014 : 2003 盗作疑惑についてですが、現 C++WG 主査の林田様より、事の真相を教えて頂きました。実は「国際規格ISO C++ ライブラリ ハンドブック」の著者である越田一郎先生は当時のC++WG 主査であり、同じ誤訳…

`Д´)ノ バグベアード抜きで printf デバッグを語るんじゃねぇ!

わたしがprintf()デバッグをしない理由...くそぅ、まだまだバグベアード( why バグベアード? )の知名度が足りねぇのか。 printf デバッグにおいてはバグベアードのようなモジュールを利用するかどうかで大きく話の前提が変わるんだけどなぁ。自分的には「こ…

進捗率クラスを更新しました。

C++

http://tricklib.com/cxx/dagger/progress.h...更新したと言っても... rational_progress(int_T a_denominator) :numerator(0) ,denominator(a_denominator) { assert(0 < denominator); } rational_progress(int_T a_numerator, int_T a_denominator) :nume…

進捗率クラスを公開しました。

C++

http://tricklib.com/cxx/dagger/progress.h...そんなに分量ないし説明及びサンプルコードを含んでいるので 「続き」に内容を全て引用します。モノとしては純粋に進捗率の計算を行う為だけのもので、boost の progress よりは boostっぽいかなぁと思います。

C++0x の nested_exception について 其の参(考察)

C++

前々回、前回と C++0x の nested_exception について記述してきましたが、いよいよ本題です。具体的な木構造例外処理のコードを C++0x の nested_exception を使って記述したものと trickerr.h を使って記述したものがそれぞれ以下のようになります。 nested…

C++0x の nested_exception について 其の弐(実装)

C++

C++0x の nested_exception について 其の壱(仕様) の続きです。前回翻訳した仕様を元により理解を深める為に 2003 ベースの仕様に準拠しているコンパイラで利用可能な nested_exception を実装しました。サンプルコードは http://d.hatena.ne.jp/melpon/200…

C++0x の nested_exception について 其の壱(仕様)

C++

[C++] C++WGアドホック会議レポート - Faith and Brave - C++で遊ぼう で、挙がっている nested_exception の問題ですが、まずは第一の認識合わせとして関連箇所のドラフトを邦訳しました。間違い等を発見されましたら適宜修正しますのでご指摘願います。次…

バグベアードのサンプルコードを訂正しました。

http://tricklib.com/cxx/ex/bugbeard/2008-11-01 以下の点を修正。プロファイル&カバレッジ測定サンプル中の bug_tsv_profile_logger を bug_tsv_profiler に訂正。(間違っていたのはこのページ中の表記のみで、ダウンロード用の同サンプルのファイルは元…

高速剰余演算

C++

ちょっと長いのでコード全文は「続きを読む」のほうで参照して頂きたいのですが... const unsigned int tbl3 [] = { 0,1,2,0,1,2,0,1,2,0,1,2,0,1,2, 0,1,2,0,1,2,0,1,2,0,1,2,0,1,2, 0,1,2,0,1,2,0,1,2,0,1,2,0,1,2, 0,1,2,0,1,2,0,1,2,0,1,2,0,1,2, 0,1, C…

拡張文字列クラスを更新しました。(マルチ文字列リテラル関連)

C++

http://tricklib.com/cxx/dagger/xstring.h更新内容は以下の通りです。 不足していた _TX 関連の operator やその他のメソッドの _TX 対応版の追加。

拡張文字列クラスを更新しました。(マルチ文字列リテラル関連、他)

C++

http://tricklib.com/cxx/dagger/xstring.h更新内容は以下の通りです。 ただの npos だと mwcc2.4 でエラー になる箇所を base_type::npos に修正。 TX_string_literal_holder の蛇足な std::basic_string と std::basic_string への変換 operator() を除去…

バベルを更新しました。( gcc 4 系対応)

http://tricklib.com/cxx/ex/babel/メールでご指摘頂いたのですが gcc 4 系で再現する以下の問題に対応しました。 unsignize で警告。 babel namespace 内で babel namespace 内の関数を定義する際に babel:: と修飾している箇所でエラー。

拡張文字列クラスを更新しました。(gcc 用の XSTRING_VSNPRINTF、format メンバー関数の名前を assignf への変更、他)

C++

http://tricklib.com/cxx/dagger/xstring.h更新内容は以下の通りです。 gcc 用の XSTRING_VSNPRINTF の定義(vsnprintf) format メンバー関数の名前を assignf への変更。 assignf メンバー関数のエイリアスを指定できる XSTRING_ASSIGNF_ALIAS マクロの追加(…

バグベアードを更新しました。(プロファイル対応、カバレッジ対応、他)

http://tricklib.com/cxx/ex/bugbeard/ 2008-09-23 以下の点を修正。 プロファイル対応 カバレッジ対応 プロファイル&カバレッジのサンプルコードを追加。 bug_tsv_logger でヘッダー行を出力するように修正。 ヘッダー行の出力を抑止する指定マクロ(BUG_WI…

わんくま同盟 横浜勉強会 #1 に行ってきました。

スピーカーの方々、スタッフの方々、お疲れ様でした。以下、思ったことなど(中華街ツアー中の話の内容も含みます)... template の欠点について マクロとの対比をやった以上、マクロのように宣言されているかどうかをチェックできない点について触れて欲しか…

Re: そのうちなくなるもの

C++

そのうちなくなるもの - Faith and Brave - C++で遊ぼう 以下のものは、互換性のためにしばらく残されるけどそのうち標準ではなくなるか、標準の一部であることを保証しなくなるもの(実装しないコンパイラがあっても文句言わないでね、というもの) いくつか…

strton(), ntostr()

C++

strtol() の汎用版及びその逆の ntostr() を作ってみました。最初は strton.h なんてファイルで単体でアップしようかと思っていたのですが、ntostr() の為に汎用の整数部取得関数なんかも作成する羽目になりどう仕上げるべきか悩んでいるところです。悩んだ…

バベルを更新しました。

http://tricklib.com/cxx/ex/babel/jski さんよりコメントでご指摘頂いた gcc での問題を修正しました。

std::deque の実装 其の弐

C++

いくつかのコンパイラで std::deque の push_back() のパフォーマンス特性を実測してみました。規格上、std::deque の push_back() は定数時間内に終わらなければならないことになっています。が、予想通り、「稀に多大な時間がかかり且つ既存の要素数が多け…

std::deque の実装

C++

まだ調査中の段階なんでいろいろと間違っているかも知れませんが、例の STL のサブセット作成の為に std::deque について調べたところ... 規格( ISO/IEC 14882, JIX X 3014 )には実装方法は一切明記されていない。 各種コンパイラでの実装を調べたところ、概…

補助STLのβ1を公開しました。

http://tricklib.com/cxx/ax/...先日から作成していたSTLのサブセットですが、文字列クラスまわりのインプリメントが一通り完了したんでアップしました。といっても、本当にただインプリメントが完了しているってだけでコンパイル疎通は確認しているもののま…

JIS X 3014 : 2003 盗作疑惑

C++

先日、cppll に投稿した件ですが、特にレスがついてないところを見ると、とりあえずは自分の勘違いってことではなさそうですね。それから引き続き STL のサブセットの作成を続けてて basic_string::rfind() の説明にも誤訳を発見しました。【21.3.6.2 basic_…

バグベアードを更新しました。

http://tricklib.com/cxx/ex/bugbeard/ 2008-06-05 以下の点を修正。 VC でバグベアード適用時に過剰となる警告を抑止する為に #pragma warning(disable:1011) を追加。 bug_thread_local_storage::init() に base_type::set_target_storage() を含める。 g+…

エラーハンドリングフレームワークを更新しました。

C++

http://tricklib.com/cxx/dagger/trickerr.h以下の内容の修正を行いました。 error_element_type クラスに throw_this() メンバー関数を追加。 error_element_type クラスの no_catched() メンバー関数のデフォルトの挙動として throw_this() を呼び出すよう…

boolean を更新しました。

C++

http://tricklib.com/cxx/ex/boolean/ 2008-05-27 以下の修正を行いました。 Windows環境にて Windows SDK 内の型名と衝突していたので boolean から tricklib::nullable_bool に改名。tricklib 名前空間は TRICKLIB_BOOLEAN_NAMESPACE で名称を変更可能。 …

Hamigaki C++ ライブラリのドキュメントはどこ?

id:y-hamigaki さんの Hamigaki C++ ライブラリ をひょっとしたら仕事で使わせて頂くことになるかも? ...と、言うことでダウンロードしてみたんだけど doc/html のあたりを見ても HTML ファイルとか見あたらないし... ↓ここ見りゃいいのかもしれないけど、…

メモリー操作ユーティリティを更新しました。

C++

http://tricklib.com/cxx/dagger/trickmem.h以下の内容の修正を行いました。 C-style のキャストを廃止。 binary_ptr/const_binary_ptr のメンバー関数として operator - (), empty(), swap(), clear() を追加。 binary_data のメンバー関数として clear() …