Boost総合スレ part8
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2009/08/28(金) 16:53:36part 7 http://pc12.2ch.net/test/read.cgi/tech/1232367742/
part 6 http://pc11.2ch.net/test/read.cgi/tech/1207749841/
part 5 http://pc11.2ch.net/test/read.cgi/tech/1192662575/
part 4 http://pc11.2ch.net/test/read.cgi/tech/1175663346/
part 3 http://pc11.2ch.net/test/read.cgi/tech/1158991211/
part 2 http://pc8.2ch.net/test/read.cgi/tech/1139313234/
part 1 http://pc8.2ch.net/test/read.cgi/tech/1091198276/
■関連サイト■
Boost C++ Libraries
http://www.boost.org/
Boost 翻訳プロジェクト
http://boost.cppll.jp/HEAD/
Let's Boost
http://www.kmonos.net/alang/boost/
boost info
http://shinh.skr.jp/boost/
0153デフォルトの名無しさん
2009/09/28(月) 21:55:29Spiritに比べれば、Lambdaなんて軽いものさ。
0154デフォルトの名無しさん
2009/09/28(月) 22:38:280155デフォルトの名無しさん
2009/09/28(月) 22:46:330156デフォルトの名無しさん
2009/09/28(月) 23:59:460157デフォルトの名無しさん
2009/09/29(火) 01:21:11ありがとうございます。STLとboost を使おうと決心していろいろ使っています。
自分で作った方が早くて楽なのになぁと思いつつ
なれれば、STL + boost の方が、安全かつ、早くできるはず と信じて;
0158デフォルトの名無しさん
2009/09/29(火) 03:51:340159デフォルトの名無しさん
2009/09/29(火) 04:39:48値は変更しないけど十分な寿命を持った左辺値が必要なときには、そういう手段が
使えるようになるかもね。
現状ではポインタで受け取るようにしてないと、危ないんだよねぇ。
0160157
2009/09/29(火) 10:41:11自分でも無理だと思う。Cばかり20年以上だから;
0161デフォルトの名無しさん
2009/09/29(火) 18:45:050162デフォルトの名無しさん
2009/09/29(火) 19:53:49この場合はダミーというか rvalue reference を受けるコンストラクタも追加すればいいんじゃないでしょうか。
>157
ぶっちゃけ C++ の経験があまりないんだろうなとは思いながら回答しました。popp
一時オブジェクトの生存期間とか C++ 使いなら誰もが一度ははまったことがあり11そうなところなので。
>自分で作った方が早くて楽なのになぁと思いつつ
無理に気負わず自分が書くより楽になると思う部分から使っていけばいいと思います。
0163デフォルトの名無しさん
2009/09/29(火) 20:59:08shared_ptr複製時のアトミック操作のコストが気になるのかな?気持ちはわかるが、無理だと思う。
非マルチスレッド版とマルチスレッド版の間での共有をどう解決するかだ。その間で共有できないなら利便性が無くなりメリットの乏しいものになる。
普通の使い方ではshared_ptrの複製のコストは問題にならないと思う。
それでも、複製のコストが気になるならshared_ptrを参照渡しにすればコピーのコストはないし、そうすればshared_ptrの複製が減らせられる。
vectorで使うときの大量な複製が気になるならC++0xの右辺値参照に期待しよう。
0164デフォルトの名無しさん
2009/09/29(火) 21:33:39と思うけど、ものすごくクリティカルなら知らん
つーか、そんなに激しくクリティカルならポインタ取り出せばいいような気がするし、
デフォのままで問題ないと思うし、たぶんBoostの中の人もそう思ってるからずっと
こういう仕様なんだろうと思うけど
0165Boost.Xpressive
2009/09/30(水) 12:20:37これからはぼくと std.regex 君の時代だと思うのれす。。。
0166デフォルトの名無しさん
2009/09/30(水) 14:55:06もうなんかいっそのこと
Boost.RegexはBoost.Xpressiveのラッパにしちゃだめなのかな(笑)
0167デフォルトの名無しさん
2009/09/30(水) 16:46:190168デフォルトの名無しさん
2009/09/30(水) 16:49:560169デフォルトの名無しさん
2009/09/30(水) 17:05:00ええと、progress_displayとcompressed_pairと・・・あと何だろう?
program_optionsかな?
0170デフォルトの名無しさん
2009/09/30(水) 17:15:52一つだからな
0171デフォルトの名無しさん
2009/09/30(水) 17:38:49ホントかよw
すげーwww
しかしまあprogress_displayだって安定性では引けを取らないぜ。
0172デフォルトの名無しさん
2009/09/30(水) 19:04:14てめーprogram_optionsさんディスってんじゃねーよ
俺なんかお世話になりまくりだっつーの
>>165
たしかに使用頻度は激減したけど・・・コンパイル速いじゃん
0173デフォルトの名無しさん
2009/09/30(水) 19:29:09なので、stdにあるからboostのは要らないというのは変な表現だと思う。
もっとも俺はspirit一筋だけどな。
0174デフォルトの名無しさん
2009/09/30(水) 20:52:00マジレスするとshared_ptr, scoped_ptr, noncopyable
0175デフォルトの名無しさん
2009/09/30(水) 21:44:50というか改良が早いのは絶対Boost.Regexなんだろうから
むしろ要るのはBoost.Regexの方。
といってもBoost禁止とかいうイカレタ職場では
Std.Regexを使うことになるんだろうけど。
0176デフォルトの名無しさん
2009/09/30(水) 23:39:41なんとなくだけど
0177デフォルトの名無しさん
2009/09/30(水) 23:41:01おかしいらしいね。
でも一度そうしちゃった以上どうしようも無いんだろうな。
0178デフォルトの名無しさん
2009/09/30(水) 23:45:400179デフォルトの名無しさん
2009/10/01(木) 02:42:090180デフォルトの名無しさん
2009/10/01(木) 02:54:41コピーできない増えないクラスを作るライブラリっぽい名前
Boost.Virginとか
0181デフォルトの名無しさん
2009/10/01(木) 09:12:46ちょw
恥ずかしいなw
Boost.DQNとかあってもおかしくない様に見えてくるのが不思議。
0182デフォルトの名無しさん
2009/10/01(木) 09:19:27singletonライブラリーですね。わかります。
0183デフォルトの名無しさん
2009/10/02(金) 16:36:11boost\serialization\singleton.hpp
ってのがあった
0184デフォルトの名無しさん
2009/10/02(金) 17:15:25CStringがシリアライズできるように
template <typename Archive>
void save(Archive& ar, CString const& str)
{
std::string const s(convert(str)); // CStringからstd::stringに変換
ar & make_nvp("", s);
}
などとするとXML出力に<>(文字列)</>と空の要素タグが付いてしまいます。
この要素タグを出力しないようにしたくて調べてみたのですがxml_archive::save(std::string const&)を
使えば良いようです。
しかし、xml_archive::saveはprotectedなので使えません。
何か良い方法ないでしょうか?
0185デフォルトの名無しさん
2009/10/02(金) 17:34:29make_nvp("CString", s)
とするか、
タグそのものを使いたくないならtextでシリアライズする
0186デフォルトの名無しさん
2009/10/02(金) 17:36:11いったい何がやりたいの?
0187デフォルトの名無しさん
2009/10/02(金) 17:57:25例えば
std::string name;
をシリアライズするとき
ar & make_nvp("name", name);
ってするよね。
その結果として
<name>山田太郎</name>
を期待する訳で
<name><string>山田太郎</string></name>
がでてきたら嫌でしょ?って話。
オブジェクトのシリアライズの話でなくて型のシリアライズのカスタマイズに関する
話なの。考えもせず知ったかでレスせんでいいよ。
0188デフォルトの名無しさん
2009/10/02(金) 18:11:11自作コンテナのシリアライズの場合
template <typename Archive, typename T>
void save(Archive& ar, MyList<T> const& obj, unsigned ver)
{
std::vector<T> const v(obj.begin(), obj.end());
ar & make_nvp("myList", v);
}
だと
<strudents>
<myList>
<count>2</count><item>...</item><item>...</item>
</myList>
</strudents>
となるから
template <typename Archive, typename T>
void save(Archive& ar, MyList<T> const& obj, unsigned ver)
{
boost::serialization::stl::save_collection(ar, obj);
}
とやるの。すると下のようになる。理解できただろ?
<strudents>
<count>2</count><item>...</item><item>...</item>
</strudents>
0189デフォルトの名無しさん
2009/10/02(金) 19:13:56時と場合にもよるけど。
0190デフォルトの名無しさん
2009/10/02(金) 19:27:07判りやすいだろうと思ってCStringにしたけど実際はQString(知ってる人も多いと思うけど)。
template <typename Archive>
void save(Archive& ar, QString const& obj, unsigned)
{
std::string const buf(obj.toUtf8());
ar & make_nvp("string", buf);
}
なんてしてるのだけども<string></string>が嫌だなと思うわけです。
0191デフォルトの名無しさん
2009/10/02(金) 20:44:20ttp://booster.x0.to/
以下更新内容の一部
[Fusion]
Fusion: resolved const correctness issue
[Spirit]
Spirit: started to add attribute transformation capabilities, new examples
Spirit: added simple token printer for parser trace output
Spirit: added bool_ generators
Spirit: added qi::bool_
[Unordered]
Try supporting reference parameters in pairs. Probably not required.
Remove the optimization for std::pair with a key reference.
[Exeption]
New function: diagnostic_information_what.
[Math]
A few more minor performance tweaks for issue #3407.
Another round of performance tweaks for issue #3408.
These should make our igamma implementation comparable in performance
to the dcdflib FORTRAN routine - at least as far as MSVC is concerned.
[Impl]
missing namespace
Refactored: use static_cast and const pointer where possible.
[Graph]
Another attempt at a CSR edges() fix
[Python]
boost/python: some Py_ssize_t replaced with boost::python::ssize_t
to restore compatibility with Python 2.3 and 2.4
[Date_time]
Refs #2213. Fixed UTC zone offset boudaries.
Refs #1861. Changed the default format for time durations
to "%-%O:%M:%S%F" instead of "%-%H:%M:%S%F".
0192デフォルトの名無しさん
2009/10/03(土) 00:00:430193デフォルトの名無しさん
2009/10/05(月) 14:52:08VS2005 用のは無いのか?
0195デフォルトの名無しさん
2009/10/05(月) 21:38:35詳細は寝て待て!
0196デフォルトの名無しさん
2009/10/05(月) 22:12:190197デフォルトの名無しさん
2009/10/05(月) 22:32:44じゃああぼんすれば良いじゃん。
バカなの?
0198デフォルトの名無しさん
2009/10/05(月) 22:34:360199197
2009/10/05(月) 22:37:46> 一言いわれただけで発狂するほど自信満々のネタだったのか。
いや俺は>>195じゃねぇけどそんなの関係ねぇ。
とにかく気にくわない単語はあぼん。
じゃないとまともに2ch見てらんねぇし。
0200デフォルトの名無しさん
2009/10/05(月) 23:17:01あんま迷惑なことしちゃダメよ。
0201デフォルトの名無しさん
2009/10/05(月) 23:34:02そういうお前はちゃんと有無を言わさず>>198や>>200をあぼん
しろよ。
0202デフォルトの名無しさん
2009/10/06(火) 00:08:32progress_displayを愛する一人
0203デフォルトの名無しさん
2009/10/06(火) 02:40:58そっとしておいてやるのが吉
0204デフォルトの名無しさん
2009/10/06(火) 08:03:15そんな私も、今では progress_display 童貞。
孫にあげるのは、もちろん progress_display。
なぜなら、彼もまた特別な存在だからです。
0205195
2009/10/06(火) 08:09:350206デフォルトの名無しさん
2009/10/06(火) 14:20:09>>197みたいなキチガイもたまには湧くさ
0207デフォルトの名無しさん
2009/10/07(水) 20:06:48boost/multi_array.hppとboost/numeric/ublas/matrix.hppを比較して
単純な2次元の配列演算で、どちらが速い遅いというのはありますでしょうか?
#include <boost/multi_array.hpp>
#include <boost/numeric/ublas/matrix.hpp>
int n = 10; int m = 10;
boost::multi_array<double, 2> myArray(boost::extents[n][m]);
boost::numeric::ublas::matrix<double> myArray2(n, m, n*m);
パフォーマンス上の損がないようなら、(とりあえずblasのルーチンを使わない場合でも)
全ての2次元配列をboost::numeric::ublas::matrixで置き換えてしまおうと考えているのですが。
よろしくお願いします。
0208デフォルトの名無しさん
2009/10/07(水) 21:16:585分とかからんだろうが
0209デフォルトの名無しさん
2009/10/09(金) 00:46:30boostも2008用のにしようとインストーラーDLしようとしたら
ログイン式になってるな
なぜ?
0210デフォルトの名無しさん
2009/10/09(金) 02:52:24公式から落としてコンパイルするか、
http://booster.x0.to/ のスナップショットを使うべし
0211デフォルトの名無しさん
2009/10/09(金) 02:54:41. 2. PHP で検索した結果 1〜10件目 / 約2,970,000,000件
. 3. Java...... で検索した結果 1〜10件目 / 約 835,000,000件
. 4. Forth. で検索した結果 1〜10件目 / 約 323,000,000件
. 5. Ruby.. で検索した結果 1〜10件目 / 約 275,000,000件
. 6. perl..... で検索した結果 1〜10件目 / 約 245,000,000件
. 7. Python... で検索した結果 1〜10件目 / 約 204,000,000件
. 8. pascal... で検索した結果 1〜10件目 / 約 170,000,000件
. 9. Delphi で検索した結果 1〜10件目 / 約 127,000,000件
10. VisualBasic...で検索した結果 1〜10件目 / 約 121,000,000件
11. lisp... で検索した結果 1〜10件目 / 約. 26,700,000件
12. fortran で検索した結果 1〜10件目 / 約. 21,300,000件
13. COBOL で検索した結果 1〜10件目 / 約. 18,500,000件
14. HSP で検索した結果 1〜10件目 / 約. 12,300,000件
15. FreeBasic.. で検索した結果 1〜10件目 / 約 6,320,000件
16. Tcl/Tk. で検索した結果 1〜10件目 / 約 4,940,000件
17. QBasic で検索した結果 1〜10件目 / 約 4,190,000件
18. VisualC.... で検索した結果 1〜10件目 / 約 1,360,000件
19. DarkBASIC. で検索した結果 1〜10件目 / 約 1,320,000件
20. BasicStudio で検索した結果 1〜10件目 / 約 304,000件
21. N88basic. で検索した結果 1〜10件目 / 約 215,000件
22. f-basic で検索した結果 1〜10件目 / 約 109,000件
23. ActiveBasic で検索した結果 1〜10件目 / 約. 89,800件
24. 99BASIC.... で検索した結果 1〜10件目 / 約. 11,500件
3Dprogramming で検索した結果 1〜10件目 / 約794,000件
2Dprogramming で検索した結果 1〜10件目 / 約. 57,400件
intel で検索した結果 1〜10件目 / 約729,000,000件
amd で検索した結果 1〜10件目 / 約355,000,000件
0212デフォルトの名無しさん
2009/10/09(金) 08:29:080213デフォルトの名無しさん
2009/10/09(金) 08:31:440214デフォルトの名無しさん
2009/10/09(金) 12:15:530215デフォルトの名無しさん
2009/10/09(金) 12:37:05さすがboostを代表するライブラリだ
ハンパねぇーな
0216デフォルトの名無しさん
2009/10/09(金) 12:38:180217デフォルトの名無しさん
2009/10/09(金) 18:03:190218デフォルトの名無しさん
2009/10/10(土) 00:16:42まじかよ、と思ったらすでにアカウント登録済みだった。あれぇ?
0219デフォルトの名無しさん
2009/10/10(土) 17:49:131.40の倍以上はかかってる そんなに膨らんだっけ
0220デフォルトの名無しさん
2009/10/10(土) 17:57:32要求されるlib名が1.41とか付いてるんですが。
これは最初から付いてるやつを格納出来ないんですか。
自分でリネームするんですか
0221デフォルトの名無しさん
2009/10/10(土) 19:39:18亦、layout=taggedでリンクエラーが発生しておりましたのでlayout=versionedに戻しました。
尚、バージョン無しのファイルは必要無い様に思えますのでバージョン無しファイル生成バッチは同梱せずに暫く様子を見ます。
ttp://booster.x0.to/
以下更新内容の一部
[Spirit]
Spirit: fixed a problem in Qi real_impl preventing to use an integral type as an attribute to a floating point parser.
Spirit: restructured customization points, added qi::attr_cast, added phoenix expression support for Karma attributes
Spirit: disabled Phoenix attributes for V2.1, adjusted tests
[Numeric]
see #3449: introduce new free functions to access matrix/vector properties (Incomplete)
[Date_time]
Refs #3470. Modified documentation for c_time functions to reflect the actual behavior.
[Unordered]
Make sure inserting from a range of types other than the value type is better tested.
[Fusion]
BOOST_FUSION_ADAPT_CLASS
[Math]
Fix erf calculation limits.
Added more performance tests along with comparisons to the DCDFLIB.
Change iteration limits to use get_epsilon().
Merge changes from Sandbox.
[Fusion]
Fusion: fixing mismatch in default parameter to nview
[Syatem]
System: minor code clean up
[Signals2]
Added support for tracking of objects owned by non-boost
shared_ptr. No documentation yet.
[Graph]
Fixed duplicate base class problem
Removed old parameters from test code
0222デフォルトの名無しさん
2009/10/10(土) 19:42:21how_to_build.txtとlibs_for_build_boost.rar内readme.txtも修正致しました。
>>193-194
VS2010のExpress Editionがリリースされた場合にそちらに移行する予定はありますが、
VS2005用をビルドする予定は今のところありません。
0223デフォルトの名無しさん
2009/10/11(日) 00:54:21そこまで重くなったかどうかわからんが
Warningの数が増えた 31万個(前は20万)
0224デフォルトの名無しさん
2009/10/11(日) 01:37:080225220
2009/10/11(日) 01:59:23libboost_regex-vc90-mt-s-1_41.lib
という存在してないものを要求されるようになりました。
前回のやつは、リネームしたら通ったのですが
今回はリネームするものがありません。
-s-付きがないです。
前のやつを残してほしかったです。消してしまいました。
0226デフォルトの名無しさん
2009/10/11(日) 09:19:46代替としてICUサポート無しでビルドしたlink=static, runtime-link=staticのRegexライブラリを追加してrarファイルを差し替えました。
今後のビルドでも同様の措置を採ります。
ttp://booster.x0.to/
0227デフォルトの名無しさん
2009/10/11(日) 12:10:580228デフォルトの名無しさん
2009/10/11(日) 13:01:010229デフォルトの名無しさん
2009/10/11(日) 14:06:44時の環境でruntimeが異なったときに、面倒なことになる。
ってやつのことかな。
0230デフォルトの名無しさん
2009/10/11(日) 18:40:050231デフォルトの名無しさん
2009/10/11(日) 18:44:390232デフォルトの名無しさん
2009/10/11(日) 19:46:11って言ってみると何人つれるかな?
0233bcc5.5
2009/10/11(日) 20:50:300234デフォルトの名無しさん
2009/10/11(日) 20:53:100235やんやん ◆yanyan72E.
2009/10/11(日) 21:00:440236デフォルトの名無しさん
2009/10/11(日) 21:03:38BOOST_AUTO使える?
0237やんやん ◆yanyan72E.
2009/10/11(日) 21:31:33BOOST_AUTOがどういうもんだかよく理解していないが、
http://www.kmonos.net/alang/boost/classes/typeof.html
ググって出てきたこのコードはコンパイルできてちゃんと動いたよ。
0238デフォルトの名無しさん
2009/10/11(日) 21:47:38後者はD言語やってりゃ知ってるだろうけど
0239デフォルトの名無しさん
2009/10/11(日) 21:50:03これがiccだとコンパイルできない。
iccでコンパイルするためにはBOOST_TYPEOF_REGISTER_TYPEで型を登録しなくっちゃならないんで面倒だなっと思ってたり。
c++0xオプション入れればautoが使えるからまあいいかとか思ってる。
#include <vector>
#include <boost/typeof/typeof.hpp>
int _tmain(int argc, _TCHAR* argv[])
{
std::vector<int> a;
BOOST_AUTO(k,a.begin());
return 0;
}
0240デフォルトの名無しさん
2009/10/11(日) 22:33:57C4996「ケケケ…」
俺「何だきさまらあっ!?」
ぶっちゃけこの2つのエラーはBoostの中でdisableにするべき
0241デフォルトの名無しさん
2009/10/12(月) 00:19:300242デフォルトの名無しさん
2009/10/12(月) 11:53:48なんか気になる話が。
0243デフォルトの名無しさん
2009/10/13(火) 20:14:48と書いたら
hogehoge
と展開されるマクロってどう書くの?
( " を取りたい)
0244デフォルトの名無しさん
2009/10/13(火) 20:21:23など。
0245デフォルトの名無しさん
2009/10/13(火) 21:02:42無理だろ。
>>244
何を言っているの?
0246デフォルトの名無しさん
2009/10/13(火) 21:03:150247デフォルトの名無しさん
2009/10/14(水) 06:50:290248デフォルトの名無しさん
2009/10/15(木) 19:16:47warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。
データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
0249デフォルトの名無しさん
2009/10/15(木) 19:33:58B. 母国語でメッセージを表示する開発環境を使う
C. より適切な進路・職業を考える
どれでもお好きな方法を
0250デフォルトの名無しさん
2009/10/15(木) 19:43:44彼にはCが良いと思うよ。
0251デフォルトの名無しさん
2009/10/15(木) 20:32:58ライブラリのヘッダーでたまに出るけど、保存しなければ良いんじゃないか?
0252デフォルトの名無しさん
2009/10/15(木) 20:53:41■ このスレッドは過去ログ倉庫に格納されています