boobsを語れゴルァ boost::array<part, 6>
おまいら、BOOSTとプロジェクトでゴリゴリ使ってる?
6 :
デフォルトの名無しさん:2008/04/09(水) 21:38:15
boobsとか
プロジェクトでゴリゴリ使ってる。
最近はfunctionにはまってる。なんかC++らしくない感じでいい。
lambdaは時々使っているけど、リファクタリングして設計を整理するとなぜかいつも無くなる。
>>7 必死に噛り付いて使ってる(活用している)って感じだな。
プロジェクトで使えた事はないな
STLさえ禁止される事もあるし
spiritだのlambdaだの使う気はないから
スマポ位使わせてくれよと・・
使えないなら作ればいいじゃない。
>>9 STL禁止なら、templateも使用禁止だよね
>>10 作ったよ deleterがない奴だけど
>>11 禁止されてなかった。なぜかは俺もわかんね
「Cしかできない人も保守できる様に」
という意味不明な指示はあった記憶が
13 :
デフォルトの名無しさん:2008/04/09(水) 22:14:31
boost使うとビルドに時間かかるのがつらい。
boost.orgは、booost.orgとかboooost.orgも取ってるのかな。
関数オブジェクト使うと、変なもん使うなとかなw
Windowsならプリコンパイルヘッダを使うとビルド爆速になる。
windows.hとSTLやboostは必要なだけ全部突っ込んでる。
Spirit使っているんだけど、
プリコンパイルドヘッダで速くなっているのかどうか
わからないくらいコンパイルに時間かかる。
boobs って何だよw
18 :
デフォルトの名無しさん:2008/04/09(水) 23:26:54
うちはこっそりメインのプロジェクトにリンクしておいたらみんなが使い始めて
いつのまにかオッケーになった。
19 :
デフォルトの名無しさん:2008/04/09(水) 23:27:54
ていうかSTLすら使えないのって拷問じゃね?
20 :
デフォルトの名無しさん:2008/04/09(水) 23:31:13
boobs::shared_ptr<nipple> Body::GangbangMe() { return shared_from_this(); }
// HogeはPiyoを継承している
shared_ptr<Hoge> hoge;
shared_ptr<Piyo> piyo(new Piyo);
hoge.reset<Piyo>(piyo);
template<typename T>
void reset(shared_ptr<T> d){
element_type* p=null;
// コンパイル時にキャスト可能か判定
p = static_cast<element_type*>(d.get());
// 代入&参照カウンタ共有
}
23 :
22:2008/04/09(水) 23:45:49
のような機能がboostのスマートポインタやコンテナにほしいなと思った
24 :
22:2008/04/09(水) 23:48:37
あ、継承関係逆だ
スマソ
Give one entity one cohesive responsibility.
Let's boostに1.5の解説が追加されてるね
static_pointer_cast、dynamic_pointer_castのこと?
29 :
22:2008/04/10(木) 00:26:59
30 :
22:2008/04/10(木) 00:27:36
ってshared_ptrだけなのか
残念
32 :
デフォルトの名無しさん:2008/04/10(木) 03:19:52
∩
( ゚∀゚)彡 boobs!boobs!
⊂彡
昔bootsを語れってスレもあったようなw
shared_ptrって参照カウントを強制的に0にできる?
おそらくそれはweak_ptrの出番だな。
確かにweak_ptr使いたおしてから出直してきたほうがいいかと。
なんで、boostにDSOをクロスで扱えるライブラリがないんだろ。
あると便利なんだけどな。POCOにはあるし。
ファイルシステムとか、タイマーとかもろにシステム依存の吸収を
目的としたものがあるんだから、DSOもあって良さそうなのに。
DSOを満たすためのコンベンションをどうするのよ
と今ググっただけの知識で聞いてみる
40 :
デフォルトの名無しさん:2008/04/13(日) 15:06:55
DSOって何?
Dynamic Shared Object
用は動的共有ライブラリ
*.dll とか *.so とか
bigintガンガレ
>The Egg review has run for 2 weeks now with zero reviews
ワロス
>>43 ライブラリの目的が実用の C++ からはかけ離れてる感がする。
スクリプト言語並みに短いコードで仕事させようと思ったら欲しくなるのかも
しれないけど、その用途に C++ は使わないだろうしなぁ。
おっとprogress_displayの悪口はそこまでだ
一人で何やってんだ、こいつ?
こいつってどいつ?
なんか架空のキャラ設定?
誤爆じゃないの?
自演乙w
自演認定厨
pstadeライブラリは変態仕様よりもコンパイル時間が馬鹿長くなるのがイヤン
それとコンパイラエラーメッセージ
あれに慣れればboost::lambdaやspiritのエラーなんて普通に読めるようになりそう
あとprogress_displayはAsciiArtでGUIウィジットを扱うライブラリみたいなもの作って
そこに統合すればいい
名前はboost::AAで
boost::spirit::file_iterator喜び勇んでプロジェクトで使ってたら、
VCのIntelliSense死ぬから使わないでって言われた・・・orz
typedef char char_t;
typedef file_iterator<char_t> iterator_t;
iterator_t first("hoge.txt");
// これ以降IntelliSense様死ぬ
if( !first )
{
VC2008EEでは、使ってる行だけ
途中で送信してしまった・・・
if( !first ){
//略
}
iterator_t last = first.make_end();
何とか、IntelliSense様復活する方法無いでしょうか?
VS2008EEでは使ってる行だけ死んで、それ以降は復活しているみたいだけど。
Boostとインテリセンスを一緒に使うなんて諦めた。
インテリセンスが死ぬって、VSを再起動しないと機能しなくなるってこと?
それともVSごとお亡くなりになるってこと?
いずれにしても俺のとこではboostでインテリセンス死んだこと無いけどな…。
デバッガが死ぬことはあっても。
>>56 説明不足だったね。ごめん。
えと、VC2005PEの場合なんだけど、
>>53-54の例だと、
first.の段階で、メンバが表示されない。
そしてそれ以降の行でIntelliSenseが利かなくなる。
マウスカーソルを変数(boostコンポーネント以外であっても)の上に重ねても、何の型かも分からなくなる。
typedef boost::spirit::file_iterator<char_t> iterator_t;
って書くと、firstのメンバは何とか表示されたんだが、相変わらずそれ以降のIntelliSenseは働いてない。
ncbファイル削除してIntelliSense更新かけてもいっこうに動作しない・・・orz
ま、無くてもコードは書けるけど、IntelliSense便利だったんで^^;
それ以降インテリセンスがきかないのは、確かにつらいな。
使っている行だけ死ぬならまだ許せても。
検索するとboostでBoostで出てくるスレ違うけど何気に不便じゃない?
質問しようかと思ったけど向こう見たら解決したorz
日本語でおk
boostで使うとそれ以降インテリセンスが沈黙するのは結構あるよね。
filesystem、ptr_container、iterator、preprocessやmplなんかを
使ってるのもまず死ぬし。
VS2008だとインテリセンスがそこそこ強化されてるようだが
それ以降全死にが無くなってるならありがたいことだな。
インテリセンスのファイルを消すと復活することもあるね。
serializationでtuple用のヘッダが無いのは何でだろう。
tupleをlexical_castしようとしてうまくいかなかったときtuple_io.hppをインクルードするとうまくいった。関係あるかな?
lexical_castは中で stringstream ss; ss << in; ss >> out; みたいなことしてるから
boobs
真・スレッドストッパー。。。( ̄ー ̄)ニヤリッ
C++ 風 cast は自分でも作れるあたりはいい構文なのかね
// 意味も無く自然数を再定義
template<typename T> struct Suc {
typedef typename mpl::push_back<T, T>::type type;
};
typedef mpl::vector<> Zero;
typedef typenaem Suc<Zero>::type One;
typedef typename Suc<One>::type Two;
typedef typename Suc<Two>::type Three;
typedef typename Suc<Three>::type Four;
template<typename A, typename B, typename C=Zero>
struct Add {
typedef mpl::eval_if<mpl::equal_to<B, C>::type, mpl::identity<A>,
Add<typename Suc<A>::type, B, typename Suc<C>::type> >::type type;
};
BOOST_STATIC_ASSERT(( mpl::equal_to<Add<Two, Two>::type, Four> ));
真・スレッドストッパー。。。( ̄ー ̄)ニヤリッ
変な荒らしがいるなあ
boost.cppll.jpっていつになったらまともに文字コード返すようになるんだ?
あれ検索に引っ掛かる分むしろ有害だよな・・・
更新しました。
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
真・スレッドストッパー。。。( ̄ー ̄)ニヤリッ
真・スレッドリスターター。。。( ̄ー ̄)ニヤリッ
真・スレッドリスターター。。。( ̄ー ̄)ニヤリッ
真・スレッドリスターター。。。( ̄ー ̄)ニヤリッ
真・スレッドリスターター。。。( ̄ー ̄)ニヤリッ
83 :
誘導:2009/02/12(木) 21:48:37