Boost C++ Libraries Sandbox
1 :
デフォルトの名無しさん :
2009/08/16(日) 13:19:40 C++用ライブラリBoost C++ Libraries の Sandboxについて語るスレです。 Boostとは? 1998年に、最初のC++言語の国際規格が誕生しました。 その規格に採用されたライブラリがいわゆる「C++標準ライブラリ」です。 しかしこのとき、さらに強力な標準ライブラリを求めて、 標準化委員会のメンバー達が新しいプロジェクトを立ち上げました。 それが Boost です。 Boost の目標は、有用で、フリーな、 移植性のあるライブラリを実際に実装・公開し、 いずれ来る次のC++標準化 (C++0X) の際に、 新標準ライブラリとして提供されることにあります。
このスレッドは天才チンパンジー「アイちゃん」が 言語訓練のために立てたものです。 アイと研究員とのやり取りに利用するスレッドなので、 関係者以外は書きこまないで下さい。 京都大学霊長類研究所
3 :
アイです。 :2009/08/16(日) 16:38:55
boostが好きな奴って厨ばっか
Boost Sandbox は Subversion リポジトリのサンドボックス・サブディレクトリに収納されています。 Boost Sandboxには、最終的にBoost C++ Librariesの一部となるよう意図された 未検証のコードが含まれています。
8 :
1 :2009/08/16(日) 21:12:15
#include <cstring>//これがないとコンパイルが通らない #include <boost/bigint/bigint.hpp> boost::bigint aa("1111"); boost::bigint bb(aa); boost::bigint cc("1000000000000000") ; boost::bigint dd = cc / 10001 ; //(1と0ばっかりですが、10進法です。) こんなライブラリが含まれていたりします。
またニッチなスレを・・ で、progress_displayを超える期待株は何かあったりしますか?
>>9 あれを超える逸材はなかなか無いですね。
たぶん(笑)
普通のboostと何か違うのか?
12 :
1 :2009/08/16(日) 21:35:37
>>11 未検証のコードが含まれています。
未検証と言ってもかなり活発に開発中で、
Boostの厳しい検査に合格すれば
将来的に正式にBoost C++に乗れるもの達です。
次世代C++の元の元ってわけか 完全に趣味の人くらいしか手を出さなそうだな. もしくはboostの開発に関わりたい人か 何かboostにないいい感じのクラスはあるの?
14 :
1 :2009/08/16(日) 23:11:13
>>13 まさにその辺を語り合いたいと思います。
とりあえず
>>8 なんかどうです?
私は全然しらないのでこれから勉強していきたいですが。
既に正式に含まれているregexやfusion、flyweightその他いくつもあるようですので
おそらく既存のライブラリが改訂される時も一度はSandboxを経由
するのでしょうかね。
未来のBoostですから相当おもしろそうな物がちらほら見られます。
filesystem-v3
とかもフォルダ名しか見てませんが面白そうですね。
15 :
誘導 :2009/08/17(月) 11:42:53
16 :
デフォルトの名無しさん :2009/08/17(月) 11:57:48
とりあえずageてみる 本スレと統合すべきかどうか。
ageんな
調べるにも全て英語ページだな 暇つぶしにやるにもしんどいわ
19 :
デフォルトの名無しさん :2009/08/18(火) 01:19:53
そうなんですよ。 英語だとやはりめんどくささ倍増ですよね。
21 :
デフォルトの名無しさん :2009/08/22(土) 16:55:45
Boost File Vault Boostライブラリには入っていないけれど、その叩き台としたい、 というようなソースが転がっています。宝の山。^^ ってk.inaba氏が言ってた。
もうk.inaba博士って呼ぼうぜ
k.inaba氏も27歳か
本スレのタイトルはBoost"総合"スレなわけだし、Sandboxもあっちで扱って良いんじゃね?
俺も微妙にそう思う。 まあSandboxに着目したのは良いと思うけど、 本スレがそんな勢いないから統合しても大丈夫じゃないかと。
27 :
デフォルトの名無しさん :2009/08/29(土) 13:24:53
統合失調症
boost自体がC++0xの砂場だったはずだけど…。 そのうちSandboxのSandboxができるのか?
>>28 boostが砂場以上の役割を求められてきたから、
Sandboxを作る必要が出て来たってことだろうね。
SandboxのSandboxが出て来てもおかしくない。
それがVaultじゃないの。
32 :
デフォルトの名無しさん :2009/08/29(土) 23:58:47
Boostもそうなるのだろうか。 Boost.Sandbox.Sandbox.Sandbox
33 :
GOGO :2009/09/05(土) 02:44:37
PIC16F84Aへの書き込みの為SourceBoost6.0 Ver6.95を購入したのですが 操作手順が解りません,,,のです。、、、(--; SourceBoost IDEのBoostC でHexフアイルを吐き出す為の SourceBoost IDEの操作手順を教えて頂けませんか? ------------------------------------------------------------------ 以下はCプログラムです。 ------------------------------------------------------------------ #include<pic.h> __CONFIG(0xfff2); void ioport(void); void main() { unsigned char port_data; ioport(); while(1) { port_data = PORTA; PORTB = port_data; } } void ioport (void) { TRISA = 0x0f; TRISB = 0; }
36 :
デフォルトの名無しさん :2009/09/05(土) 11:53:19
次はASIO開発の質問をAsioと勘違いしてここに投下する俺が現れると予想
噂のbigintのダウンロード方法が分かりません
39 :
デフォルトの名無しさん :2009/09/18(金) 21:42:08
>>37 どうしてこういうヤツって答えてもらっておいて
シカトするんだろうなぁ
って疑問に思いながらageてみるテスト
40 :
デフォルトの名無しさん :2009/10/31(土) 20:47:21
死亡回避age
Visutal Studio C++ 2005 Express Edition のときは 無事に build 出来たのですが 同じソースを Visutal Studio C++ 2008 Express Edition で build しようとすると Unknown compiler version - please run the configure tests and report the results と出てきます
ほしゆ
43 :
デフォルトの名無しさん :2009/12/26(土) 18:15:53
死亡回避age
44 :
デフォルトの名無しさん :2010/01/16(土) 20:06:45
死亡回避age
死亡回避sage
死亡回避sage
死亡回避sage
numeric bindingsが本家に入るのはいつになるだろか。
Boost Geometryには期待している。 しばらくはCGALで我慢するが。
Boost.Generic Geometry Libraryが採択されました - Faith and Brave - C++で遊ぼう
ttp://d.hatena.ne.jp/faith_and_brave/20091130/1259565033 より
Boost.GGLが採択されました。
レビューであがったいくつかの問題を修正し、正式にBoostに組み込まれることになります。
「"Generic" Geomerty Libraryというライブラリ名は誤解をまねきやすいので
Boost.Geometryとかに変えたほうがいいんじゃない(強制はしないけど)」
「理想的にはBoost.Polygonの作者と協力して合併することを期待したい」
といった意見があるようです。
だって。へー。
でも何に使うのか全然分からん。
座標計算とか幾何図形の演算とかを、 配列とかpairとかtupleとか、その他「座標として扱える(特殊化された)クラス」を (このあたりがGeneric?)混在して扱うことができるらしい。 しかし、こういう基地外じみた名前空間はどうにかならないだろうか。 boost::geometry::strategy::transform::translate_transformer<boost::geometry::point_2d, boost::geometry::point_2d>
これじゃJava以下
namespace tmp { using namespace boost::geometry; using namespace boost::geometry::strategy; using namespace boost::geometry::transform; } namespace geo = tmp; typedef geo::translate_transformer<geo::point_2d, geo::point_2d> T; NSMP(名前空間メタプログラミング)始まったな
58 :
デフォルトの名無しさん :2010/05/15(土) 17:23:47
#include <utility> #include <boost/mpl/assert.hpp> #include <boost/type_traits/is_same.hpp> #include <ftmpl/vector.hpp> #include <ftmpl/fold.hpp> #include <ftmpl/value.hpp> #include <ftmpl/type.hpp> using namespace boost::ftmpl; struct add_ { template<int a, int b> value_t<int, (a+b)>& operator()(type_t<value_t<int, a>>&, type_t<value_t<int, b>>&); } add; int main(){ typedef decltype(vector(value<int, 1>(), value<int, 2>(), value<int, 3>())) lst; typedef decltype(fold(type<add_>(),value<int,0>(), std::declval<lst>())) result; BOOST_MPL_ASSERT((boost::is_same<result, value_t<int,6>&>)); }
59 :
デフォルトの名無しさん :2010/12/17(金) 23:05:31
参加age
VisualStudioで動く設定ずみ環境をダウンロードできるように まとめる人いなかった?
62 :
デフォルトの名無しさん :2011/06/14(火) 05:44:14.41
property_treeのiniファイルパーサーですけど、セクションとキー文字列の 大文字小文字の区別を無くすにはどうすればいいのでしょうか?
>>62 Boost スレで回答あったっていうかした。半日くらい待てんかね。
64 :
デフォルトの名無しさん :2011/06/14(火) 21:58:12.82
>>63 すいませんせっかちなもんで。助かりました。
65 :
デフォルトの名無しさん :2011/09/17(土) 15:38:00.60
おひさ〜 みなさんやってますか〜
66 :
デフォルトの名無しさん :2011/11/01(火) 02:18:59.73
67 :
デフォルトの名無しさん :2011/12/01(木) 13:50:09.25
ほしゅ
68 :
Qtist :2012/07/20(金) 23:35:35.35
Boost総合スレがみつからなかったので、こちらに書かせてください。 boostで、実行ファイルのパスを取得する関数はあるのでしょうか? filesystemを探したが見つからなかった。。。 環境は OS:Ubuntu10.04 boost ver1.40 です。
ないよ
このスレ、1年に4つしか投稿無いけど読んでいる人いるのかな・・・ 質問です。(boost 1.47.0使用) asioで ip:tcp:socket ip::tcp::acceptor io_service あたりを使って通信プログラムを書いてます。 データのやり取りはできるようになったのですが、相手側の切断検出方法がわかりません。 イベントハンドラ登録か、socketあたりのisAlive()あたりがないかと期待したのですが、 どうもみつからない。アプローチがおかしいのでしょうか・・ ヒントをいただければ幸いです
投稿した瞬間、readhandlerじゃないかと思って確認したら、 boost::asio::error::shut_down てのをみつけた、、これか・・・ がんばってみゆ・・。
これ最新版だとインストーラ入らないのかな 解凍してbootstrap.batを実行したらビルドエンディングとかでてました コレで全てのライブラリが使えるようになったのかな
std::auto_ptr<float> x(new float(1.1)),y(new float(2.2)),z(new float(3.3)); std::cout << *x << " " << &(*x) << std::endl; boost::ptr_list<float> l; l.push_back(x); std::cout << &(*l.begin()) << std::endl; boost::ptr_list<float> l2(l.begin(),l.end()); std::cout << &(*l2.begin()) << std::endl; 全部同じアドレスがプリンとされるはずなのにされない lをl2にコピーする方法間違ってるの?
>>73 何を出力しているか判っている?
中身は同じでも入れ物自体は違うでしょ。
viewは新しいバージョンにはないっぽい
boost::ptr_list<float, boost::view_clone_allocator> l2(l.begin(),l.end()); すみません。これでいけました
それ、スマートポインタを出力しようとしてない? x.get() でナマポがもらえる。
template<typename T> func(const boost::ptr_list<T>& lis){... } constつけるといろいろおかしくなる。 std::listではconst_iteratorをiteratorに勝手に変換してくれるのに
>>79 > std::listではconst_iteratorをiteratorに勝手に変換してくれるのに
んなわけあるか
#include <list>
typedef std::list<int> list;
list::iterator f(list::const_iterator i) { return i; }
: In function 'std::list<int>::iterator f(std::list<int>::const_iterator)':
:3:51: error: conversion from 'std::list<int>::const_iterator' to non-scalar type 'std::list<int>::iterator' requested
11でコンテナのメンバのいくつかは、素のiteratorしか引数にできない->const_iteratorも引数にできる、に変わったんだが そのあたりの挙動にからむ誤解なんじゃないか
fusionのi番目要素求めるのに コンパイル時にiがわかってるならat<i>で求められるけど 動的にi番目を求める方法ないのでしょうか
コンパイル時にiがわかってないとi番目の型もわからんじゃないか
i番目の型だけはコンパイル時に既に分かってる場合を考えて作ってみたら 要素の入ってない末尾に_voidなんて型が入っていてコンパイルエラー
いつもニヤニヤあなたのコードに紛れ込む不具合、boostです! どうぞ、boostとお呼びくださいねっ(はぁと)
もどり値の型 Retをコンパイル時に指定する場合 template <typename IIterator> IIterator list_ref_fusion_impl(IIterator i, int n ){ if(n>0){ return list_ref_fusion_impl(boost::fusion::next(i),n-1);} return i;} template <typename Ret,typename Sequence> Ret list_ref(Sequence & seq, int n ){ return boost::fusion::deref(list_ref_fusion_impl(boost::fusion::begin(seq), n));}
type traitsと同様に使える 自分のカスタム is_my_object を作りたい template<typename T> struct is_my_object { typendef なにか type bool value= なにか } の2つのメンバーさえ何らかの方法で定義すれば 他のis_arrayとかとmpl::and_ ,mpl::or_したりして使えるの?
boost::mpl::true_::value;//true boost::mpl::true_()(12);//error bool operator()(const T &t){return true;} ぐらい追加しろよ
boost::fusion::vector で3番めの要素を型も含めて変更することできないの? at<3>(v)=`c` at<3>(v)="aaaaa" みたいなことしたい
たぶんinsertとeraseでやるんじゃないの
メモリー効率を考えて view_clone_allocator を使いまくってるけど OpenCVとかもこれ使うと元のアルゴリズムより高速になることあるんだろうか
enable_if で場合分けした関数を作ってるとresult_ofが自動で型推論されない
94 :
デフォルトの名無しさん :2012/08/18(土) 16:15:27.33
時間を扱うライブラリとして、 boost::posix_time, boost_chrono, boost::xtime など色々あると思うのですが、 なぜこんなに色々あるんでしょうか。 使い分けすべきなのか、どれか一つだけを使うべきなのかよく分かりません。 使い分けすべきであるなら、どのような使い分けがあるのでしょうか。
posix_time boost::date_timeの一部 xtime boost::threadの一部 chrono C++11で標準入りしたstd::chronoのboost版実装
てことで使えるならstd::chrono それがだめでboostが使えるならboost::chronoを使うのが良いのかね
97 :
デフォルトの名無しさん :2012/10/13(土) 11:53:10.82
ho
文字列との相互変換はposix_time(というかBoost.Date_time)のほうが 充実していて便利ではないか? と思ったが、Boost.Chronoには標準ライブラリにないIOがあった。 標準にも欲しいぞ。
浅岡 坂井 近藤 倉石 関 江村 鎌原 棉田 松井 壇原 宮脇 武田 会津 石田 佐々木 光
テスト
101 :
デフォルトの名無しさん :2014/03/25(火) 15:41:25.38 ID:+56HsUBT
>大阪府三島郡島本町の小学校や中学校は、暴力イジメ学校や。 島本町の学校でいじめ・暴力・脅迫・恐喝などを受け続けて廃人同様になってしもうた僕が言うんやから、 まちがいないで。僕のほかにも、イジメが原因で精神病になったりひきこもりになったりした子が何人もおる。 教師も校長も、暴力やいじめがあっても見て見ぬフリ。イジメに加担する教師すらおった。 誰かがイジメを苦にして自殺しても、「本校にイジメはなかった」と言うて逃げるんやろうなあ。 島本町の学校の関係者は、僕を捜し出して口封じをするな >島本町って町は、暴力といじめの町なんだな 子供の時に受けた酷いイジメの体験は、一生癒えない後遺症になるなあ
102 :
デフォルトの名無しさん :2014/03/25(火) 16:31:27.32 ID:Y5CdI20o
Boostに正規表現がはいってる
>>101 どこの誤爆だw
島本町は教育委員会含めて屑ぞろいだからな
廃校決まった地元の底辺高校へ進学させようとする屑教師とかいまだに健在なんだろうか?
あと、児童臨時保管所の運営も厚生していかんとどうにもならん
NGNG
最新のコンピュータはBoostライブラリを使ったソースコードをコンパイルして楽しむ為にあるのではないかと思えてきた
最近はboostよりC++11、14のほうが熱く感じる rvalure ref、constexprなど面白い boostはver1.56なってもうやりつくした感で今後の予定も未定になってしまった
別ジャンルのものを比べてどうする
比べるならDだぬ