1 名前:デフォルトの名無しさん [2009/01/19(月) 21:22:22 ] 過去スレ part 6 pc11.2ch.net/test/read.cgi/tech/1207749841/ part 5 pc11.2ch.net/test/read.cgi/tech/1192662575/ part 4 pc11.2ch.net/test/read.cgi/tech/1175663346/ part 3 pc11.2ch.net/test/read.cgi/tech/1158991211/ part 2 pc8.2ch.net/test/read.cgi/tech/1139313234/ part 1 pc8.2ch.net/test/read.cgi/tech/1091198276/ ■関連サイト■ Boost C++ Libraries www.boost.org/ Boost 翻訳プロジェクト boost.cppll.jp/HEAD/ Let's Boost www.kmonos.net/alang/boost/ boost info shinh.skr.jp/boost/
2 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 21:28:03 ] >>1 乙
3 名前:デフォルトの名無しさん [2009/01/19(月) 21:31:09 ] 乙 こ、これは>>1 乙じゃなくて>>2 乙なんだからね!
4 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 21:31:40 ] ■関連書籍■ Boost C++をチューンアップする最先端ライブラリ www.amazon.co.jp/exec/obidos/ASIN/4894714191/ Boost C++ Libraryプログラミング www.amazon.co.jp/exec/obidos/ASIN/4798017043/ Beyond The C++ Standard Library www.amazon.co.jp/exec/obidos/ASIN/0321133544/ C++ Template Metaprogramming www.amazon.co.jp/exec/obidos/ASIN/0321227255/ The Boost Graph Library www.amazon.co.jp/exec/obidos/ASIN/0201729148/ ■関連スレ■ C++相談室 part65 pc11.2ch.net/test/read.cgi/tech/1230341243/ C++0x 4 pc11.2ch.net/test/read.cgi/tech/1214407525/ 【C++】STL(Standard Template Library)相談室 11 pc11.2ch.net/test/read.cgi/tech/1231640024/
5 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 21:32:40 ] Loki sourceforge.net/projects/loki-lib/ JTC1/SC22/WG21 - The C++ Standards Committee www.open-std.org/jtc1/sc22/wg21/ POCO, the C++ Portable Components www.appinf.com/poco/info/ sourceforge.net/projects/poco/ The unofficial BCB Boost patches bcbboost.sourceforge.net/
6 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 21:34:00 ] テンプレは以上です. >>4 に ・Boost C++をチューンアップする最先端ライブラリ を加えたのと, ・Boost C++ Libraryプログラミング のリンクを第二版に修正しました.
7 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 01:04:16 ] コンパイラ VC8 boost 1_37_0 次のコードがC2780連発です。 #include <boost/bind.hpp> #include <boost/numeric/interval.hpp> using namespace boost; using namespace boost::numeric; int main() { bind(&in, 3, interval<int>(2, 4)); } 何か対処法などご存知の方いらっしゃるでしょうか? find_ifなどの条件式に使いたいのですが。
8 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 02:08:01 ] >>7 in のテンプレート引数を指定すれば、とりあえずうまくいくと思うけどbind(&in<int, interval<int>::traits_type>, 3, interval<int>(2, 4)); もっと簡単にかけるかどうかはわからんです
9 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 16:07:04 ] // / / パカッ //⌒)∩__∩ /.| .| ノ ヽ / | | ● ● | / | 彡 ( _●_) ミ まピョーん☆ / | ヽ |∪| /_ // │ ヽノ \/ " ̄ ̄ ̄ ̄ ̄ ̄ ̄(..ノ
10 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 02:09:13 ] OS: Mac OS X 10.5.6 コンパイラ: gcc 4.0.1 boost: 1_37_0 この環境で,filesystemをソースからビルドしてパスを通して, g++ test.cpp -lboost_filesystem-gcc40-mt-1_37 みたいにコンパイルしようとすると,リンカがsymbol not foundとエラーをはきます. ubuntuでは問題ないためmac特有の問題だと思うのですが,原因,対策がお分かりの方いらっしゃいませんか? ちなみに,以下がコンパイル結果です. g++ test.cpp -lboost_filesystem-gcc40-mt-1_37 Undefined symbols: "boost::system::get_generic_category()", referenced from: __static_initialization_and_destruction_0(int, int)in ccCDIN5Z.o (長いので中略) libboost_filesystem-gcc40-mt-1_37.a(operations.o) __static_initialization_and_destruction_0(int, int)in libboost_filesystem-gcc40-mt-1_37.a(operations.o) ld: symbol(s) not found collect2: ld returned 1 exit status
11 名前:10 mailto:sage [2009/01/22(木) 02:20:10 ] ソースコードは以下の通りです. #include <boost/filesystem.hpp> using namespace boost; int main(int argc, char** argv) { filesystem::path dir("test"); filesystem::create_directory(dir); return 0; }
12 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 07:21:21 ] >>8 コンパイルできました。 ありがとう。
13 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 09:19:21 ] >>10 -lboost_system-mt
14 名前:10 mailto:sage [2009/01/22(木) 16:35:26 ] >>13 無事コンパイルできました. 冷静に考えてみると,エラーを見たらboost::systemを参照してたんですね... それにしてもなんでmacだけ挙動が違うんだろうか. とにかくありがとうございました!!
15 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 17:21:16 ] ubuntuに入ってるのが1.34.1以前なんじゃね
16 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 18:33:46 ] 更新しました。 ttp://booster.x0.to/
17 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 21:08:29 ] いったい何人が落としてるのか知らんが RSS配信でもしてテンプレにURL貼るとかすりゃいいのに 毎度毎度スパムのように貼るな と言ったら荒れるのだろうか
18 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 08:17:34 ] >>17 そうカリカリすんな。お前は本物のスパムにもマジレスするのか? 目障りだと感じたなら黙ってあぼーんするだろ?
19 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 12:04:12 ] もうすぐ1.38ですね。 何が変わったのか楽しみ
20 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 15:45:15 ] 0xまでC++はおあずけ
21 名前:デフォルトの名無しさん mailto:sage [2009/01/25(日) 11:03:31 ] 0xいらね
22 名前:デフォルトの名無しさん mailto:sage [2009/01/25(日) 23:18:01 ] マイクロ秒の値をミリ秒に変換するのにboost::unitsを使うのは重すぎ? 1000で割るだけのことなんだけど、1000倍する人がいたりするので、 こういう仕組みを導入する必要もあるかもしれないと思って勉強してるんだが、 思ったより複雑でちょっと挫折しかけてる。
23 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 10:54:49 ] >1000で割るだけのことなんだけど、1000倍する人がいたりするので、 >こういう仕組みを導入する必要もあるかもしれないと思って勉強してるんだが、 そういう仕組みを導入するより、1000倍して尚且つテストもしてみない阿呆を切るべき。
24 名前:デフォルトの名無しさん [2009/01/26(月) 11:30:44 ] boost::functionより速いらしい・・・ www.codeproject.com/KB/cpp/fastdelegate2.aspx
25 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 18:14:43 ] >>24 実装は面白いけれどさ。 正直言って速度差は微々たる物だなぁ。 呼び出しにかかる時間は、現実的に問題にならない。 実際のコードでは、桁が何桁も違うくらい遅い処理を、その呼び出された関数の中でするはず。 すると一千万回呼んで500〜1000msぐらいの速度差なんてどうでも良くなってしまう。 劇的に違うのはコピーにかかる時間で、 これはBoost.Functionの実装ではヒープを使っているために目に見える速度差がでるんだろうけど。 一千万回コピーして十秒足らず。 そんなにコピーする?
26 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 18:33:18 ] それよりコンパイルが早いのがほしいわ
27 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 22:13:44 ] >>26 激しく同意
28 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 22:15:05 ] 公共の仕事に配属された。 boost禁止だと・・・orz
29 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 22:23:06 ] コンパイル早くするのはマシン変えるのがいいんじゃね。
30 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 23:13:36 ] そりゃ、下手すりゃ数十年単位で保守を続けるプログラムに変化の激しいboostは論外だろ。 大人しくC++0xの正式リリースを待て。
31 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 23:47:25 ] boostのソースもってきて独自実装に入れちゃえよ。
32 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 00:00:44 ] boostのソースコードを使うことにはライセンス的にまったく問題ないわけだから、 お前の書いたコードして使うってのはだめなの?
33 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 00:43:46 ] そのBoostのコードだれかメンテできんのか? あ,本家のコードに追随して更新していけばいいか…
34 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 08:46:32 ] >>33 俺は自分がメンテできるとこだけ移植してるな その過程でソースを詳しく見ることになるので いろいろと勉強になることも多い
35 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 10:45:02 ] >>33 別に更新し続けなければいけない理由はないだろ。 もし、自分が「更新されたboostに追加された機能」を使いたいなら必要だけど。
36 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 17:11:35 ] boost.intrusive.listでアロケータを設定したいのですが設定できませんか? std::allocatorや自作のアロケーターをテンプレートレベルで混在させたいですぅ。
37 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 17:30:30 ] すみません自己解決しました。
38 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 13:21:57 ] 1.38のリリース準備が完了したみたいですね。
39 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 00:06:48 ] New Libraries: Flyweight, ScopeExit, Swap. Updated Libraries: Accumulators, Exception, Hash, Multi-index Containers, Proto, Unordered, Xpressive ttp://beta.boost.org/users/news/version_1_38_0
40 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 00:54:31 ] >ScopeExit もう自前でscope_guard書く必要がなくなるんだろうか
41 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 12:04:22 ] boost::hoge を文章の中で言うときは boost.hoge って書くことになってるの?
42 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 12:43:31 ] >>41 いいえ
43 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 21:52:32 ] 更新しました。 ttp://booster.x0.to/ 迷惑という意見が多い様でしたらサイトを閉じます。
44 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 22:16:05 ] >>43 稀によく落とすからなくなると寂しい。 とは言え更新箇所わからないし最新版欲しかったら自分からチェック入れるからな。
45 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 01:29:45 ] >>43 気にせず続けてくれ
46 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 02:04:04 ] 更新の通知の仕方に文句を付けられただけなのに、いきなりサイト閉鎖とは気が早いな。
47 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 07:21:27 ] あれ!? >>43 のサイトまじで消えてる!!
48 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 09:18:59 ] 今日は1.38のリリース日だー(・∀・)
49 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 10:40:19 ] >>47 あるよ。リロードしてごらん boostの発展のためには、ライブラリを簡単に使えるよに支援してくれるサイトの存在は良いことだと思うよ。
50 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 22:45:18 ] もうすぐ1.38 wkwkbnbn
51 名前:デフォルトの名無しさん [2009/02/01(日) 20:12:06 ] >>43 サイトを閉じることで更新の報告がなくなるのなら、ぜひお願いします。
52 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 20:37:30 ] スレの保守を兼ねていて悪くないとは思うんだけどな。
53 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 20:48:11 ] 更新報告でスレが埋まる訳でも無し >>51 は個人的に恨みでもあるのか
54 名前:デフォルトの名無しさん [2009/02/01(日) 21:28:51 ] >51 むしろお前がなくなればいい
55 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 22:21:23 ] >>43 様の報告レスがあれば保守ageをしなくて済むというメリットが
56 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 22:46:27 ] では次回から、SVNのコメントから重要そうなものを幾つか抜粋して 書き込み時に添える様に致します。
57 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 13:48:03 ] あー、それなら更新点報告ということで役にも立つな。
58 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 17:32:05 ] 便利なサイトだった コメントつけたことはなかった
59 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 10:03:03 ] 1.38がまでリリースされてない件について!!
60 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 10:34:25 ] beta2出たのが1/30だぜ?
61 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 13:46:37 ] C++0xが出た後のboostはどうなるんだろうね。 0x拡張分の6割だか7割だかはboost発祥だそうだし、 0xとの重複分を廃止した上で新たなクラスを追加構築していくのかな?
62 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 16:54:35 ] いやいや、非対応の古い処理系向けに残ってくれないと困る。 今だってTR1が出た後にunorderedとかhashとか追加しているくらいだ。
63 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 17:50:53 ] C++0xが広く普及するまではlambdaにはboost版はやっぱり必要だもんな。 0xの普及が遅いとboost版から抜けられなくなるかも
64 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 18:08:47 ] すみません、#ifdefでboostが使えるかどうかの判定ってできますか?
65 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 18:32:57 ] >>64 ヘッダーが読み込まれていれば頭で何らかのシンボル定義してるだろうから、それで確認?
66 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 18:37:09 ] >>65 ありがとうございます。やってみます。
67 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 21:07:35 ] ヘッダーの読み込みが余所で行われている前提ならともかく自分で #include するなら boost 使えない時にエラーになっちゃうし。 普通そーいうのは configure とかでやる。
68 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 11:40:39 ] boostの正規表現ライブラリって日本語対応してないんだな。 ショック
69 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 12:29:26 ] wide char版なら使えるんでは?
70 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 17:22:40 ] >>68 boost::wregex boost::u32regex 好きなほう使え mingwでicuのstatic作るのにmakefileかなり修正させられた。
71 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 18:23:49 ] boost::regexよりもboost::xpressive(非静的記述でも)のほうが速いって認識であってる?
72 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 19:53:36 ] UTFにすることで日本語も問題なく使えるんじゃなかったっけ?
73 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 04:48:31 ] 更新しました。 ttp://booster.x0.to/ 今回から、前回のビルドからの変更点を記載したchangelog.txtを同梱する様に致しました。 以下その一部 Fix bug in bessel_jn for n == -1. Add new test case. Modified : /trunk/boost/math/special_functions/detail/bessel_jn.hpp Modified : /trunk/libs/math/test/test_bessel_j.cpp Added missing config.hpp include for the wide characters support configuration macro. Modified : /trunk/libs/date_time/test/testfrmwk.hpp Changed to two_bit_color_map by default Modified : /trunk/boost/graph/dijkstra_shortest_paths.hpp Default color map to white, and fixed some warnings Modified : /trunk/boost/graph/two_bit_color_map.hpp Add missing #include <iostream>. Modified : /trunk/libs/asio/example/buffers/reference_counted.cpp Modified : /trunk/libs/asio/example/chat/posix_chat_client.cpp Modified : /trunk/libs/asio/example/nonblocking/third_party_lib.cpp Make validation a static member function. Fixes #2673 Modified : /trunk/boost/random/inversive_congruential.hpp Modified : /trunk/boost/random/linear_feedback_shift.hpp added missing std:: Modified : /trunk/boost/flyweight/intermodule_holder.hpp Use a pipe if eventfd is not supported at runtime. Fixes #2683. Modified : /trunk/boost/asio/detail/eventfd_select_interrupter.hpp Ensure arguments to windows::overlapped_ptr::complete() are passed through to the completion handler. Fixes #2614. Modified : /trunk/boost/asio/detail/win_iocp_overlapped_ptr.hpp fix wrong include Modified : /trunk/boost/fusion/include/remove.hpp
74 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 05:47:16 ] >>71 長い条件以外では大体そんな感じだと思ってる ttp://www.boost.org/doc/libs/1_37_0/doc/html/xpressive/appendices.html
75 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 11:13:26 ] >73 毎回そのまま張るとまた論議を呼びそうな気が。 張るんなら↓みたいにまとめた方が見やすいんじゃないだろうか。機械的処理も可能だし。 各ファイルの Added とかは要らないのでは、と思って抜いてみたんだけど Graph とかは厳しいな。 [Math] - Fix bug in bessel_jn for n == -1. - Add new test case. [DateTime] - Added missing config.hpp include for the wide characters support configuration macro. [Graph] - Changed to two_bit_color_map by default - Default color map to white, and fixed some warnings [Asio] - Add missing #include <iostream>. - Use a pipe if eventfd is not supported at runtime. Fixes #2683. - Ensure arguments to windows::overlapped_ptr::complete() are passed through to the completion handler. Fixes #2614. [Random] - Make validation a static member function. Fixes #2673 [Flyweight] - added missing std:: [Fusion] - fix wrong include
76 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 11:26:23 ] 現在何がアクティブなのかがわかって便利だね
77 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 15:03:26 ] >>74 thx たいていの場合で2倍以上速いんですね
78 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 00:18:47 ] Boost.Regexオブジェクト構築に毎回コストがかさむのですが、 すべてクラスの変数にするとかしかないのかな。 いっぱい関数有るんでめんどくさいわ・・・
79 名前:78 mailto:sage [2009/02/08(日) 00:36:08 ] 変更が少なくていいので、 とりあえずstatic変数にすることにしました。
80 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 19:50:24 ] 1.38.0きてるお
81 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 22:14:02 ] spiritのast_treeの質問なんですが、 //型名など一部省略してます spirit::rule intp, expp; intp = leaf_node_d[int_p]; expp = int_p >> *(root_node_d[ch_p(L'+')] >> int_p); 上記のようなルールで、スキップパーサにblank_pを指定して 1 + 2 を構文解析させたとき、スキップ指定しているにもかかわらず、 2つ目の値のツリーの結果に、+から2までの間のスペースが' ''2'といった 感じに含まれてしまうのですが、leaf_node_dはそういう仕様なんでしょうか? (1つ目の値はスペースは含まれていない) リーフノードにスペースを含まないようにするには、スキップパーサを指定してても intp = no_node_d[*blank_p] >> leaf_node_d[int_p]; の様に、ルール側でもスペースを飛ばすしか方法がないのでしょうか?
82 名前:81 mailto:sage [2009/02/09(月) 22:51:59 ] 訂正 expp = intp >> *(root_node_d[ch_p(L'+')] >> intp);
83 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 18:41:55 ] 更新しました。SVNは1.39に移行しました。 ttp://booster.x0.to/ 以下更新内容の一部 [Units] Zeroing in on bug with sun < 5.9 Begin tracing xlc failure [Graph] Integrating SOC 2007 code Importing all_cliques, all_cycles algorithms Importing geodesic distance module from SOC. Imported clustering coefficient, eccentricity and core numbers algorithms. [Regex] Fixes #2713: change table initialisation so that it's initialised statically. Workarounds to allow compilation by Sun studio without the -library=stlport4 option. [Random] correctly detect the end of the range in lagged_fibonacci_01::seed. Fixes #2703 Split random_test.cpp into multiple files to avoid hitting resource limits. Correct stringizing [Spirit] Bug fix to iterator 亦、2月8日付で1.38の正式版もリリースされました。 ttp://www.boost.org/users/news/version_1_38_0 >>75 有難うございます、改善致しました。
84 名前:デフォルトの名無しさん [2009/02/13(金) 18:54:59 ] ttp://booster.x0.to/ を利用してる奴どれくらいいるの? 手あげて
85 名前:デフォルトの名無しさん [2009/02/13(金) 19:11:38 ] 利用してます bccのバリなりもほしいです
86 名前:デフォルトの名無しさん [2009/02/13(金) 19:13:19 ] 自鯖なら、ダウンロード数、アクセス数は把握してるんでは?
87 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 19:35:58 ] age厨は自演で何をしたいんだ? 前スレから延々つきまとってるだろお前。
88 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 23:41:16 ] >81 の質問はスルーですか? 他所のastのサンプルでほぼ同じようなコード書かれてるけど、 スキップ文字が入るなんて説明ないし自分のミスっぽい気はするんですが。
89 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 10:26:38 ] 少なくても最近ここに訪れている人の中には回答できる人はいないと思う。
90 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 10:40:56 ] つかえねー
91 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 11:23:14 ] >>88 > >>81 の質問はスルーですか? お前が答えてやれよ。
92 名前:デフォルトの名無しさん [2009/02/14(土) 12:57:25 ] >>81 blank_p ではなく space_p tamachan.club.kyutech.ac.jp/~gridbug/spirit/spirit01.html
93 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 13:02:52 ] >>92 やっぱ、違うっぽいorz
94 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 15:14:53 ] >>81 intpいらない。int_pは元々単一ノードとして解析される。 expp = int_p >> *(root_node_d[ch_p(L'+')] >> int_p); 多分、leaf_node_dがint_pの前にスキップされた空白をノードに取り込んでるんだろう。
95 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 16:04:06 ] >>94 int_pのみだと空白スキップされることはまでは試して 気がついてたのですが、int以外の自作トークンが使いたいときに どうすれば良いのかで悩んでます。 やはりno_node_dで空白飛ばすのが正答なんでしょうかね。
96 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 17:43:19 ] >>95 バグかも知れんね。 spirit/tree/common.hppの907行あたりを書き換えたら予想通りの結果になったよ。 if (hit) { std::advance(from, std::distance(from, scanner.first) - hit.length()); return result_t(hit.length(), factory_t::create_node(from, scanner.first, true)); }
97 名前:統合しました。。。: mailto:sage [2009/02/14(土) 18:08:11 ] pc11.2ch.net/test/read.cgi/tech/1234420483/ 真・スレッドリスターター。。。( ̄ー ̄)ニヤリッ
98 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 18:08:15 ] >>96 なるほど、そうでしたか。 チュートリアルなどでもこの不具合の発生するコードがあるのに 今まで誰も問題にしなかったみたいだし、割と最近の修正で 混入したバグなんでしょうね。 わざわざ調べていただいて、ありがとうございました。
99 名前:89 mailto:sage [2009/02/14(土) 22:21:42 ] >>96 正直侮りすぎた。スマンかった。
100 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 04:17:45 ] 謝らなくていい。ただ邪魔だから消えろ。