[過去ログ] Boost総合スレ part7 (989レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
978: デフォルトの名無しさん [sage] 2009/08/23(日) 03:18:21 AAS
そういえば、普段お前らboost.jamを使ってプロジェクトをコンパイルしてたりする?
あれ、コマンドライン経由のビルドツールとしては俺の中で結構高評価。 nmakeやsconsより数段楽だわ。
979: デフォルトの名無しさん [sage] 2009/08/23(日) 04:02:37 AAS
boostは脱bjem化の方向に進んでますが
980: デフォルトの名無しさん [sage] 2009/08/23(日) 04:06:59 AAS
まじで?
じゃあ何でビルドすんのよ
981
(1): デフォルトの名無しさん [sage] 2009/08/23(日) 04:28:51 AAS
CMake
982: デフォルトの名無しさん [sage] 2009/08/23(日) 05:01:22 AAS
へー
試してみるわ、ありがと
983: デフォルトの名無しさん [sage] 2009/08/23(日) 10:07:08 AAS
外部リンク[html]:www.boost.org
上記リンクを参考にして'|'をdelimiterとして文字列をsplitしようとしています。
また、'|'を'\\'でエスケープすることもサポートしたいと考えています。
つまり、"abc|def||ghi|JK\\|L"という文字列を[5]("abc", "def", "", "ghi", "JKL")にsplitしたいのですが、
sregex_token_iterator begin(s.begin(), s.end(), as_xpr('|'), -1), end;
以上のようにas_xpr('|')をdelimiterとすると、'\\'でエスケープした'|'も
delimiterとしてsplitしてしまいます。
delimiterを~ax_xpr('\\') >> L'|'とするとdelimiterが'\\'でない文字+'|'の2文字として
splitしてしまいます。
目的の処理を達成するにはどのような正規表現を書けばいいのでしょうか・・・?
984
(1): デフォルトの名無しさん [sage] 2009/08/23(日) 11:37:25 AAS
>>981
どこで使われているのかくわしく
985: デフォルトの名無しさん [sage] 2009/08/23(日) 12:01:12 AAS
>>984
find $BOOST_ROOT -name 'CMakeList.txt'
986
(1): デフォルトの名無しさん [sage] 2009/08/23(日) 20:19:40 AAS
value_initialized を変数aの初期化のように使うのとbのように初期化付き変数として使うのはどちらがお勧めですか?
class Hoge
{
int a;
value_initialized<int> b;
public:
Hoge()
:a(value_initialized<int>())
{
}
};
987: デフォルトの名無しさん [sage] 2009/08/23(日) 20:30:58 AAS
その例のようにクラスのメンバならHoge : a() {}ですむのだからvalue_initializedを使う必要はない。
(使いたいというのなら止めはしないが)

あと、a(value_initialized<int>())ではaの型がコピー構築可能でないといけない分、汎用性がbより劣る。

だから、自分が評価するなら、a() > b > a(value_initialized<int>())の順だな。
988: デフォルトの名無しさん [sage] 2009/08/23(日) 20:51:23 AAS
なるほどa()が適切ですね。bの使い方も可能で、a(value_initialized<int>)は
無駄があると。
分かりやすい説明ありがとうです。
989: デフォルトの名無しさん [sage] 2009/08/23(日) 21:53:22 AAS
>>986
その例だとvalue_initializedを使う利点がない
1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.151s*