- 1 名前:デフォルトの名無しさん [2006/09/23(土) 15:00:11 ]
- 語って.はぁと part boost::mpl::int_<3>
前スレ 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/
- 689 名前:デフォルトの名無しさん mailto:sage [2007/01/28(日) 17:22:21 ]
- >>688
boost 気にすんな。紛らわしい。 どうせ accept されないし。 書き換えるにしてもたいした手間じゃない。
- 690 名前:デフォルトの名無しさん mailto:sage [2007/01/29(月) 16:44:56 ]
- >>671
確か、mingwで使おうと思ったときに""だとどうしてもエラーになった気がする。 それ以後ずっと<>にしてる。 ""で行けている人居る?
- 691 名前:デフォルトの名無しさん mailto:sage [2007/01/29(月) 17:58:52 ]
- #define BOOST_DIR c:/lib/boost_ver_xxx/
#define BOOST_BIND_INC BOOST_DIR##bind.hpp うまくいかない #include "BOOST_BIND_INC " うまくいくのかな? #include <BOOST_BIND_INC >
- 692 名前:デフォルトの名無しさん mailto:sage [2007/01/29(月) 18:04:41 ]
- Makefileの先頭で
INCLUDE=C:/boost LIB=C:/boost/mingw こんなんでいけたはず。 というかUNIXルーツのソフトのお約束で常識だったはず。 x.ccをコンパイルする時はこうだった思う。 A>echo "INCLUDE=C:/boost">Makefile A>echo "LIB=C:/boost/mingw">>Makefile A>gmake x
- 693 名前:デフォルトの名無しさん mailto:sage [2007/01/29(月) 18:25:49 ]
- >>691
それをやるならこんな感じ。 # define BOOST_DIR c:/lib/boost_ver_xxx/ # define PP_IDENTITY(x) x # define PP_STRINGIZE(x) PP_STRINGIZE_I(x) # define PP_STRINGIZE_I(x) #x # define BOOST_INC(name) PP_STRINGIZE(PP_IDENTITY(BOOST_DIR)name) # include BOOST_INC(bind.hpp)
- 694 名前:デフォルトの名無しさん mailto:sage [2007/01/29(月) 23:43:27 ]
- >>691
ちょw
- 695 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 19:16:12 ]
- ヨーロッパ系の人の作るライブラリーにboostが使われないのは
ライセンスの関係?単なる好み?
- 696 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 21:58:14 ]
- 変なレビュー投稿しちまった
- 697 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 05:06:16 ]
- spiritって、もしかしてUnicodeは対応してない?
- 698 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 11:15:53 ]
- いや、普通にいけるはず。
Unicodeのtextファイル相手にfile_iterator使ってる場合はBOMに注意。
- 699 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 11:51:17 ]
- さんクスコ
- 700 名前:デフォルトの名無しさん mailto:sage [2007/02/02(金) 23:37:31 ]
- boost::tuples::get<0>をbindしたいのですが
なぜかうまくいきません。 struct tmp_bi_op_t { double sum; double operator()(double a ,double b) { sum +=a+b; std::cout << "(" <<a << " " <<b << " " << sum << ")"; return a+b; } }; tmp_bi_op_t tmp_bi_op; tmp_bi_op.sum=0; std::vector<double > vec,vec2(2); vec.push_back(2); vec.push_back(1); std::for_each( boost::make_zip_iterator( boost::make_tuple(vec.begin(), vec.begin()) ), boost::make_zip_iterator( boost::make_tuple(vec.end(), vec.end()) ), boost::bind<void>( boost::ref( tmp_bi_op), boost::bind(boost::tuples::get<0>,_1), boost::bind(boost::tuples::get<1>,_1))); std::cout << tmp_bi_op.sum;
- 701 名前:デフォルトの名無しさん mailto:sage [2007/02/08(木) 22:12:27 ]
- こんにちは
vista+vc2005環境にboostを組み込みたいんですけどうまく行きません 何が原因なんでしょうか・・以下の手順で駄目でした まずboost1_33_1とjamを落とし展開、jamをboostフォルダに移動し、 コマンドプロンプトで以下を実行 (boostのフォルダ以下略)>"C:\Program Files\Microsoft Visual Studio 8\VC\bin\vcvars32.bat" bjam -sTOOLS=vc-8_0 --prefix="C:\Program Files\Microsoft Visual Studio 8\VC" install すると一見快調にビルドしてるようでしたが>>380氏と同様のエラーが頻発していて、 かつ「Unicodeで保存してください」ワーニングも量産されてました 6.0では組み込みが成功していたんですが、そのときコンパイラに組み込んでいた (VCのフォルダ)\INCLUDE\boost-1_33_1みたいなフォルダは生成されてませんでした 次に>>391のサイトにあるインストーラを試してみましたがこれも例のフォルダは見当たらず・・ ひょっとしてvc2005ではboostの組み込み方が違っていて 私は壮大な勘違いをしてるんでしょうか? 今日一日かけて調べてみましたが全然分かりません どうかよろしくお願いしますm(_ _;;)m
- 702 名前:デフォルトの名無しさん mailto:sage [2007/02/08(木) 23:22:12 ]
- >>701
391さんのお任せのやつなら、 VC8.0用を指定して展開位置を指定するとそこににboost-1-33-1のディレクトリが出来ているので、 その中にboostがあるから、自分のプロジェクトのインクルードディレクトリに追加指定すれば よいかと思いますけど。リンク対象のライブラリ本体はlibの中にバイナリが入ってます。 VCのINCLUDEに入れたければ、boostフォルダごとコピーすれば使えるのはないですか? VCのLIBにもlibの中身をコピーして。 見当違いでしたら、すみません。
- 703 名前:デフォルトの名無しさん mailto:sage [2007/02/09(金) 19:15:31 ]
- >>702
レスありがとうございます。 それでいいんですね、VC6.0でいけてたときは自動でVC以下にフォルダが できてたような気がしたので、てっきり失敗してるのかと思ってました。 で、プロジェクトにインクルードとライブラリのフォルダを追加したのですが・・・ どうやらboostを認識してるようですがまたもや意味不明のエラーが多量にorz SP1適用もなんかうまくいってないようなのでもう一度よく調べて出直してきます
- 704 名前:デフォルトの名無しさん [2007/02/09(金) 19:41:07 ]
- 公式サイトのゲッティング スタートからvc8.0のリンクから飛んだ先にEEのときがある
規制中なので携帯からリンク貼れね
- 705 名前:デフォルトの名無しさん mailto:sage [2007/02/09(金) 19:55:20 ]
- >>702
コピーしなくてもいいだろ。
- 706 名前:デフォルトの名無しさん mailto:sage [2007/02/09(金) 20:02:16 ]
- ビルドしたboostフォルダは1GB超えるからな
- 707 名前:デフォルトの名無しさん [2007/02/10(土) 21:11:13 ]
- C++の標準ライブラリになるまでは様子見だな。
- 708 名前:デフォルトの名無しさん mailto:sage [2007/02/10(土) 22:22:59 ]
- Boostがまんま標準化されると思ってる奴がまだいるのか
- 709 名前:デフォルトの名無しさん [2007/02/10(土) 22:45:21 ]
- だから様子見なんだろ
- 710 名前:デフォルトの名無しさん [2007/02/10(土) 23:58:59 ]
- >>703
俺は、C直下にboost_1_33_1のフォルダ入れて VS2005std使ってて VC++のインクルードディレクトリにC\boost_1_33_1 ライブラリファイルフォルダにC\boost_1_33_1\lib って設定したら、問題なく使えてる。
- 711 名前:デフォルトの名無しさん mailto:sage [2007/02/11(日) 20:27:53 ]
- boostのリビューアー募集してるね
- 712 名前:デフォルトの名無しさん mailto:sage [2007/02/13(火) 13:33:23 ]
- Xpressive の人のライブラリか?
何かスゲーな。
- 713 名前:デフォルトの名無しさん mailto:sage [2007/02/18(日) 00:37:48 ]
- serializationでshared_ptrをシリアライズしようと思ってるんですけど訳分からんです。
とりあえずただの参照でテストしてみたら unregistered_classが発生したので調べたとおりに BOOST_CLASS_EXPORT(Derived); を入れたら今度はunregistered_castが発生したのでいろいろ調べて boost::serialization::void_cast_register<Derived, Base>(0, 0); を入れたらただの参照ならシリアライズできるようになりました。 これを今度はshared_ptrに入れてみようかと思ったら またもやunregistered_classが発生しました。 どうやらsp_counted_base_implとかいうのが絡んでるようで いろいろ試してみたのですがなかなかうまくいきません。 boost_132::shared_ptrとかいう中途半端なものもあるみたいですけど これはもしかしたら仕様策定中ですか?
- 714 名前:713 mailto:sage [2007/02/19(月) 18:24:41 ]
- すいません。抜けてました。
派生クラスをベースクラスのポインタでシリアライズしたいのです。 バージョンは1.33.1です。
- 715 名前:デフォルトの名無しさん mailto:sage [2007/02/21(水) 18:45:54 ]
- Accumulatorsの仕様がもう一回変わるとかいってるのですが
もう自分のプログラムにいれちゃったよ
- 716 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 10:40:57 ]
- TR1、TR2、C++0xとboostの主機能が取り込まれるのを期待しているが、
実際C++0xが2010年位にできたとして、実際主なコンパイラがサポートしだすのは いつになるんだろう。 GCCは期待できるとして、次期Visual C++で何も動きがないとすると、 結局今後5年くらいはshared_ptrつかうにもboostのお世話になったりして。 1_34いつになるのかなぁ・・・。
- 717 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 10:57:48 ]
- 規格殺すにゃ刃物はいらぬ
MSのサポートがなけりゃいい
- 718 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 11:05:36 ]
- つか、MSがその頃までC++をサポートしてるかどうか
- 719 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 12:26:40 ]
- 今となっては TR1,TR2 以外のライブラリも増えたんで主機能という風でもないような。
C++0x 後にゃ、今度はその新機能を使いまくりのライブラリが作られるだろうし。
- 720 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 14:13:29 ]
- >>718
ドライバとか、どうしてもC/C++が必要な領域もあるだろうから、 当分はVisualC++無くならないと思う。たぶん。
- 721 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 14:17:11 ]
- いずれはドライバも C# の unsafe 使って書いてくれとか言われるのかなw
- 722 名前:713 mailto:sage [2007/02/23(金) 19:57:51 ]
- どうにか自己解決しました。
デバッグのためのコードが邪魔してたみたいです。 スレ汚しすいませんでした。
- 723 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 01:32:35 ]
- 以前スレで紹介されていたBoostのインストーラーを使いセットアップし、regexを使ってソースを書いたところ、Boost側のソースで
boost\regex\v4\regex_raw_buffer.hpp(177) : error C2661: 'operator new' : 3 個の引数を伴うオーバーロードされた関数はありません。 boost\regex\v4\perl_matcher_non_recursive.hpp(99) : error C2059: 構文エラー : '*' というエラーが出たんですが、どうすれば直るんでしょうか? コンパイラはVC++2005Expressです。
- 724 名前:723 mailto:sage [2007/02/26(月) 23:31:23 ]
- 自己解決。
stdafx.hで #include <boost/regex.hpp> すればOKだった。
- 725 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 23:58:53 ]
- boostって何で流行らないの?糞だから?
- 726 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 00:06:08 ]
- 流行ってると思うけど
- 727 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 08:26:44 ]
- 俺だけ取り残されてるわけじゃないんだ! という
必死の念仏でしょう。
- 728 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 14:38:27 ]
- 常に最新の boost を使いたい場合は、
CVS から定期的に取って来て自動的にビルド、 エラー無ければ直前のバージョンと入れ替え、 というようなシステムを自前で用意しないとダメ? PHP の PEAR のようにリポジトリから 最新バージョンを持ってきてくれると便利なんだが。 って、スクリプト言語の手軽さと比較するほうが間違いか。
- 729 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 21:30:35 ]
- Visual Studio用にバイナリで配ってない時点で、流行ってないことは明らかだろ。
- 730 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 21:58:05 ]
- 流行っているといえば流行っている
流行っていないといえば流行っていない 結構微妙な位置づけな気がする 巨大な非標準ライブラリってだけで、使いにくい局面は多いよな
- 731 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 22:03:29 ]
- >>729
bjamの宣伝をしたいからじゃね?
- 732 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 22:05:00 ]
- 対応してるコンパイラが何十種類もあるのにVC++だけ特別扱いするわけにはいかんだろう
- 733 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 22:11:59 ]
- デバッグ・リリース、静的・動的リンクの
全ての組み合わせのLIB/DLLを合計すると軽く1GiB超えていた覚えがある。 でも今確かめてみたらDLLとそのインポートライブラリに限れば、 10MiB以下に収まっている(1.33.1のVC++ 7.1でのビルド)。 俺は動的リンク版が無いもの以外静的ライブラリを削除しているのだが、 残った静的ライブラリの合計は、およそ221MiB。 (ただしNTFSの圧縮でディスク上は68.5MiBとなっている)
- 734 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 00:19:33 ]
- >>732
ユーザが多い順にバイナリくらい提供した方がいいだろ。
- 735 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 00:26:46 ]
- 流行ってるかどうかとはあまり関係ない話だな
- 736 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 01:08:04 ]
- >734
馬鹿除けになるからバイナリは無い方がいい。bjamぐらい使え。 そもそもバイナリ必要なのは一部だけだし。
- 737 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 01:09:49 ]
- 無いと困るような人とその存在すら知らない人が同じフロアで仕事してる
つうか技術寄りな人が勝手に調べて喜んで使ってる感じ
- 738 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 10:24:58 ]
- VCユーザなら、こっからinstaller落とせるけど。
www.boost-consulting.com/download.html
|

|