[過去ログ] Boostを語れゴラァ part4 (1001レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
737(1): デフォルトの名無しさん [sage] 2007/09/26(水) 16:14:17 AAS
さすがに他のライブラリをさらに必要とする
昨日は C++ の標準には入らないとおもうんだけど、どう?
738: デフォルトの名無しさん [sage] 2007/09/26(水) 16:17:25 AAS
>>737
他のライブラリを必要とするかどうかは実装の問題だから標準云々にはとりあえず関係ないと思う
739: デフォルトの名無しさん [sage] 2007/09/26(水) 17:54:17 AAS
Boost.Pythonとかは入らないだろうがな
740: デフォルトの名無しさん [sage] 2007/09/26(水) 19:49:50 AAS
むしろICUを標準に
741: デフォルトの名無しさん [] 2007/09/26(水) 23:57:31 AAS
Type2Type!
742: デフォルトの名無しさん [sage] 2007/09/27(木) 06:39:39 AAS
std::string pythoncode = "pythoncode";
Boost::Python python(pythoncode);
cout << phthon;
743: デフォルトの名無しさん [sage] 2007/09/27(木) 19:07:07 AAS
bjamで俺ルールを使うときに
import myrule ;
みたいに書きたいんだけど、moduleの検索パスをどうやって追加するかがわからないので
とりあえず確実に検索されてるなというパス
$BOOST_BUILD_PATHと$BOOST_BUILD_PATH/utilに放り込むという方法しかとれないのが悔しい…でも(ry
744: デフォルトの名無しさん [sage] 2007/09/27(木) 23:57:34 AAS
pythonじゃなくてlispでメタな制御したいのだけど、boostにはそういうライブラリーはないの?
745: デフォルトの名無しさん [sage] 2007/09/28(金) 00:49:21 AAS
boostはないけど、CLOSやマクロやcall/ccやdefine-syntax使ったのが山ほどあるじゃん
746(1): デフォルトの名無しさん [] 2007/09/30(日) 18:16:00 AAS
boost::program_options って便利なんだけど、もっと、こう、
便利にならないかなぁ。たとえばオプションの一覧を
何らかのマクロで与えれば、それを解析する
boost::program_options::options_description の
インスタンスが自動的に生成されて、なおかつ
コマンドラインオプションの解析結果を保持する
シングルトンも自動的に生成されるとか。
747: デフォルトの名無しさん [sage] 2007/09/30(日) 20:22:24 AAS
>>746
ちょっとだけ使ってみたけど、何だかコードが長ったらしくなってしまい、
古典的なgetopt()を使ったコードに比べてそんなにいいとも思わなかった俺は
老害と言えよう。
748: デフォルトの名無しさん [] 2007/09/30(日) 20:26:01 AAS
boost::program_options::options_description dc;
を、std::cout << dc; したときの出力速度がやったら遅い気がする。
のが気になった。
749(2): デフォルトの名無しさん [] 2007/09/30(日) 21:43:13 AAS
コマンドラインをパースしたとき、定義していないオプションが
出現しても例外を出さずに単に無視するだけにしてほしいんだけど、
そういうことはできないのかな?
750(1): デフォルトの名無しさん [] 2007/09/30(日) 22:06:37 AAS
パーサ自作して、extra_parser()で登録すればできると思うよ。
751(1): デフォルトの名無しさん [] 2007/09/30(日) 22:18:24 AAS
>>750
。。。。。面倒すぎる・・・
catch してやりすごそう・・・
と思ったけど catch しちゃったら
途中でパース投げ出してるじゃん!
752: デフォルトの名無しさん [sage] 2007/09/30(日) 22:19:52 AAS
>>751
そうそうw
抜けちゃうんだよね。
753: デフォルトの名無しさん [] 2007/09/30(日) 22:25:20 AAS
>>749
実際は、もうすこし条件があるんじゃないですか?
私はたとえば、
./program -a -b -c executable_name -d -e -f
で、executable_name が登場した後の -d -e -f は executable_name へのオプションだか
ら、program_optionsライブラリにはスルーさせたいと思ったことがあって、それならごく簡単
なextra_parser (ちょっとした文字列比較のみ) でどうにかなりました。
754: デフォルトの名無しさん [] 2007/10/01(月) 00:02:52 AAS
boost.functionで、<>の中を関数プロトタイプのように書けるとおもいますが、その仕組みをおしえてくだsai。
boost::function<int hoge(int a, int b)> f;
みたいなやつです。
755(1): デフォルトの名無しさん [sage] 2007/10/01(月) 00:20:56 AAS
最初にクラステンプレートfunctionを前方宣言しておいて、
function<R ()>は
function0<R>を継承するよう部分特殊化。
function<R (T1)>は
function1<R, T1>を継承するよう部分特殊化。
function<R (T1, T2)>は
function2<R, T1, T2>を継承するよう部分特殊化。
以下function10になるまで繰り返し。
たぶんこんな感じ。
756: デフォルトの名無しさん [sage] 2007/10/01(月) 00:57:22 AAS
>>755
ありがとう。
757(2): デフォルトの名無しさん [] 2007/10/01(月) 01:28:26 AAS
BOOST_STATIC_ASSERT(boost::is_same<U,double>::value); が、マクロに2引数渡すなゴルァって言われて
エラーになってしまうんですが、どうしたらいいでしょうか。
758(1): デフォルトの名無しさん [sage] 2007/10/01(月) 01:46:57 AAS
>>757
BOOST_STATIC_ASSERT(boost::is_same<U BOOST_PP_COMMA( ) double>::value);
759: 758 [sage] 2007/10/01(月) 01:51:51 AAS
あとヘッダはこれ
#include <boost/preprocessor/comma.hpp>
760(1): デフォルトの名無しさん [sage] 2007/10/01(月) 01:57:16 AAS
BOOST_STATIC_ASSERT((boost::is_same<U,double>::value));
761(1): デフォルトの名無しさん [sage] 2007/10/01(月) 01:57:52 AAS
>>757
プリプロセッサは::を扱えないから仕方ない
762(1): デフォルトの名無しさん [sage] 2007/10/01(月) 02:10:38 AAS
>>761
ここでうまく扱えてないのは :: じゃなくて <> の引数リストね。
763: デフォルトの名無しさん [sage] 2007/10/01(月) 02:14:13 AAS
>>760
イイ!
764(2): デフォルトの名無しさん [sage] 2007/10/01(月) 02:38:05 AAS
このスレの皆様は起きてるのかな。よかったらこれ、教えてもらえませんか?
2chスレ:tech
あっちのスレで。
765: デフォルトの名無しさん [sage] 2007/10/01(月) 02:45:38 AAS
>>762
普通に間違えて書いてた・・訂正thx
766(1): 764 [] 2007/10/01(月) 04:14:27 AAS
MPL初心者です。MPLで遊んでいてちょっと詰まったので質問させてください。
typedef boost::mpl::list<
boost::mpl::lambda<
boost::is_same< // equal_toのほうがいいのかな
boost::mpl::_1,
boost::mpl::int_<0>
>
>::type,
boost::mpl::lambda<
boost::is_same<
boost::mpl::_1,
boost::mpl::int_<1>
>
>::type
> cond_list;
みたいなリストに対して、(つづく)
767: 764 [] 2007/10/01(月) 04:15:09 AAS
(>>766の続き)
template<int V>
static void XXX(typename boost::disable_if<
boost::mpl::or_<
boost::mpl::bool_<false // initial value
boost::mpl::or_<
boost::mpl::at_c<cond_list, 0>::type::apply<boost::mpl::int_<V>
boost::mpl::at_c<cond_list, 1>::type::apply<boost::mpl::int_<V> >
>
>
>::type* = 0) {
std::printf("default\n");
}
みたいな関数を書きました。cond_listの全要素に対してapplyしてor_してます。
このXXX()を、boost::mpl::foldを使って書き直したいんですが、
第三パラメタ fold<cond_list, boost::mpl::bool_<false ここ> はどう書いたもんでしょうか。
768: デフォルトの名無しさん [sage] 2007/10/01(月) 06:07:24 AAS
メタ関数
template<bool B, int V1, int V2>
struct hoge {}
を用意して、lambda<hoge, _1, _2, V>しとく
769: デフォルトの名無しさん [] 2007/10/01(月) 06:54:53 AAS
BOOST_STATIC_ASSERT って、
#include <cassert> の assert() マクロに比べて
何が嬉しいの?
770: デフォルトの名無しさん [] 2007/10/01(月) 07:05:56 AAS
assertは実行時に失敗する
static assertはコンパイル時に失敗する
失敗がはやければ立ちなおれるかもしれないだろ?
771: デフォルトの名無しさん [] 2007/10/01(月) 07:22:52 AAS
>>749
http://www.boost.org/doc/html/program_options/howto.html#id1593176
772: デフォルトの名無しさん [] 2007/10/01(月) 07:25:53 AAS
当然だけどコンパイル時定数しか扱えないよね。
sizeof のチェックとかに使うことが多いのかな?
あんまり使い道思いつかないんだけど。
773(1): デフォルトの名無しさん [sage] 2007/10/01(月) 09:19:09 AAS
>>72
素で言ってるのか?
template ってコンパイル時にしか使えないから使い道思いつかないって
言ってるのと同じだぞ
774: デフォルトの名無しさん [sage] 2007/10/01(月) 09:24:59 AAS
どっちでも意味がとれるミスタイプだなw
775: デフォルトの名無しさん [sage] 2007/10/01(月) 10:21:11 AAS
>>773
ええ〜テンプレートは使いまくりだけどさ、
マジで BOOST_STATIC_ASSERT が便利に
使える場面ってのがよくわかんなくって。
あほな俺になんか実例紹介してくれ。
776: デフォルトの名無しさん [sage] 2007/10/01(月) 10:35:26 AAS
検索かけてみればboost内では
BOOST_STATIC_ASSERT( is_xxx< X >::value );
みたいにtype_traitsとの組みあわせで使われてるのが多いようだ
777: デフォルトの名無しさん [sage] 2007/10/01(月) 19:20:10 AAS
なるほど
778: デフォルトの名無しさん [sage] 2007/10/02(火) 04:13:07 AAS
メタプログラミングするときメタ関数の戻り値をチェックしたり。
mplとか使わないならconcept checkで大体用は足りるかも。
779: デフォルトの名無しさん [sage] 2007/10/02(火) 10:49:53 AAS
今の STL ってコンセプトチェックしてくれないよね?
って俺が使ってる VC++8 についてくる STL のことしか
知らないんだけどさ。
SGI のやつとかはコンセプトチェックしてくれるの?
780(2): 780 [sage] 2007/10/02(火) 11:08:49 AAS
事故解決しました
781(1): デフォルトの名無しさん [] 2007/10/02(火) 11:59:29 AAS
boost::optional なんてのを知った。
いままで、エラーの流れとデータの流れは分離せよ、
という自戒から意味のある値を返せない時は例外を
投げてたんだけど、「意味のある値が返せない」
ってことを返せるんだよね・・・
同様のケースでは今まで NULL ポインタかえしたり、
たとえば 0 より大きな値をとることが分かっている
関数が 0 を返すことでエラーと見なしたりしていて、
自分はそういうの気持ち悪いなぁ、って思ってたんだけど、
なんかその自戒が崩壊していきそうだ。
782: デフォルトの名無しさん [sage] 2007/10/02(火) 12:16:08 AAS
世の中、エラーではないけど意味のある値を返せないという状況もある。
783(3): デフォルトの名無しさん [sage] 2007/10/02(火) 12:24:48 AAS
うほっ、これは便利。
--
template<typename IterT, typename ValueT>
void print_unique_values_in_sorted_sequence(IterT begin, IterrT end)
{
boost::optional<ValueT> lastValue;
for (IteratorType i = begin; i != end; ++i) {
if (! (lastValue && *i == *lastValue))
std::cout << *i << std::endl;
lastValue = *i;
}
}
--
値保持変数と有効フラグ変数を持ち回る必要がなくなるじゃぁないか。
784(2): デフォルトの名無しさん [sage] 2007/10/02(火) 12:33:14 AAS
なんかさ、こんなのがあったらいいなぁ、ってのが
boost にはたいていあるよな。で、自前で作ってた
のよりもはるかによく考えられて設計&実装されてる。
俺って不要なんじゃね?
今頃気づいた。
785: デフォルトの名無しさん [sage] 2007/10/02(火) 12:39:27 AAS
>>784
何を言う。boostは部品だ。つまり君は、部品をどう組み立てるかに専念すればいいということだ。
786: デフォルトの名無しさん [sage] 2007/10/02(火) 12:45:33 AAS
じゃ、俺、生きててもいいんだ…
カーチャン
787(1): デフォルトの名無しさん [sage] 2007/10/02(火) 12:47:49 AAS
2chスレ:tech
_,,‐─-v‐、,,、
,,-‐'": : : : : : : : : : `ヽ
/: : : : : : : ,,__ : : : : : : \
r': ,、,,.-─''"゛ ミ : : : : : : : 'i、
`/ / ミ_ : : : : : : :,、}
i l _,,..-‐^‐-、 `゙i: : : /l.l|
i、}‐-、 ヽ;;/,rェッ;;'" ゙ー' 9iリ!
| ',tテi ヽ='" ゞ t'
| 'i"´| , -、 ヽ-、,,___
| '}、 !,,tu'" ヽ、 ,l: ‐-‐" }: : : : :
} lヽ、__,,,.-‐ヽ /: : : : : : /|: : : : :
,r/ /: : :ヽー‐' ノ: : : : : : : / .|: : : : :
/: \ /: : : : : 丶,, -''_: : : : : : / |: : : : :
/: : : : :ヽ/: : : : : : : ヾ''‐--‐ヽ |: : : : :
/: : : : : : : : : : : : : : : : : : ヽ\: : / |: : : : :
ブーツ=デ=ヤーレ[Buits De Yale]
(1955〜 フランス)
788: デフォルトの名無しさん [sage] 2007/10/02(火) 13:20:03 AAS
>>783
*使ってうまくセットにしたって感じだよね。
多値好きな俺には堪えられない。
789: デフォルトの名無しさん [sage] 2007/10/02(火) 13:52:12 AAS
boostは部品だが、boostを使ったソフトウェアも、ソフトウェアを動かすOSも、コンピュータそのものも、
それが吐き出したデータも、データを利用する部署も、世の中は全て部品だ。
そして784の作る部品よりも全て別の人が作った部品の方がよく考えられて設計、実装されているならば、
784は不要な存在であると言える。
どうでもいいけど>>787の元ネタってアーサー・ケストラーだっけ?
790(2): デフォルトの名無しさん [sage] 2007/10/02(火) 16:07:10 AAS
>>784
なんかマ板じゃないけど愚痴っちゃうけど。
いくら努力したって頂点付近にいる人間にはなれないわけよ
そんな中で俺の存在意義って見出せないんだよなー
とか思ってもう5年。
791: デフォルトの名無しさん [sage] 2007/10/02(火) 16:11:42 AAS
プログラム書くのなんて資本が要るわけじゃなし、他の分野と比べれば
割と誰でも頂点に行ける世界だよ。
792: デフォルトの名無しさん [sage] 2007/10/02(火) 16:34:03 AAS
>>780
無限ループktkr
793: 783 [sage] 2007/10/02(火) 17:07:57 AAS
>783のコードは検索して引っ掛かったものをそのまま貼ったんだけど、
どうせなら引き数はrangeにして欲しかったような希ガス。
--
template<typename Range, typename Value>
void print_unique_values_in_sorted_sequence(Range & r)
{
boost::optional<Value> lastValue;
boost:range_iterator<Range>::type i = begin(r), e = end(r);
for (; i != e; ++i) {
if (! (lastValue && *i == *lastValue))
std::cout << *i << std::endl;
lastValue = *i;
}
}
--
帰ったら試してみよ。
794: デフォルトの名無しさん [sage] 2007/10/02(火) 22:53:55 AAS
>>790
どんな天才も、お前の代わりにトイレには行けないんだよ!
795(1): デフォルトの名無しさん [sage] 2007/10/02(火) 23:18:56 AAS
boostって環境依存なライブラリじゃないんでしょ?
ならboost/threadってどういうこと?
796: デフォルトの名無しさん [sage] 2007/10/02(火) 23:21:06 AAS
は?
797: デフォルトの名無しさん [sage] 2007/10/02(火) 23:22:03 AAS
windowsとか、特定の環境じゃないと使えないじゃん
798: デフォルトの名無しさん [sage] 2007/10/02(火) 23:30:10 AAS
誰が「boost全体が」環境非依存なんて言った?
799: デフォルトの名無しさん [sage] 2007/10/02(火) 23:33:47 AAS
>>795
Windows APIを使った実装とpthreadを使った実装を用意して、
環境次第でどっち使うかが切り替わるようになっている。
もちろん、どっちも使えない環境ではアウト。
800: デフォルトの名無しさん [sage] 2007/10/02(火) 23:48:39 AAS
>>790
それは逆だと思うね
天才のミス(バグ)を凡人が修正できるのはプログラミングの分野だけだ
801(1): デフォルトの名無しさん [sage] 2007/10/02(火) 23:58:59 AAS
天才とか凡才とか、そんなこだわりを持ってない奴が一番巧いんだよ
802: デフォルトの名無しさん [sage] 2007/10/03(水) 00:00:48 AAS
>>783
ひどすぎる
・IterT を IteratorType と書きミス
・ValueT を iterator_traits<> から求めず、なぜかテンプレート引数で受け取っている
・ループの最初で IterT last = begin とし、++begin からループすれば
毎フレーム lastValue をチェックする必要は無いし、ValueT も不要にできる
・そもそも boost::optional<> 使う必要が無い
・std::unique_copy と std::ostream_iterator を使え
803: デフォルトの名無しさん [sage] 2007/10/03(水) 00:09:19 AAS
>>801
なんだそのうまい事いったな的なセリフは。
804: デフォルトの名無しさん [sage] 2007/10/03(水) 00:10:27 AAS
boost.Interfaceのtemplate based IDLはまだかね?
作者のうちの一人は変な言語作って、OOTLすら更新止まってるし…
今のところはboost MLでjoelさんがマクロベースIDLにケチ付けたときに示した方法でやってるけど
あの方法もメソッドの型をいちいちインタフェースとは別に定義しなきゃならんから
二度手間になって、マクロベースIDLと同じくらいダサいし…
なんかインターフェース定義の決定版みたいなものはないのかのぅ
805: デフォルトの名無しさん [sage] 2007/10/03(水) 03:14:37 AAS
とりあえず自演乙
806(2): デフォルトの名無しさん [sage] 2007/10/03(水) 03:45:59 AAS
Boost.Interfacesって
仮想関数と比べて
どの程度のメリットがあるの?
807(1): デフォルトの名無しさん [sage] 2007/10/03(水) 05:28:48 AAS
俺、メソッド名とか覚えられないから
Visual Studio 2005 の IntelliSense がないと作業効率半減。
ほかの IDE といえば emacs (IDEか?) と Eclipse CDT しか
使ったことないんだけど、補完機能に優れているものって
Visual C++ のほかになにか候補ある?
boost ってテンプレート多用のせいか IntelliSense が
混乱してだんまり決め込むことも多いんだけど、最近
IntelliSense を混乱させる原因がわかってきたんで
boost のヘッダファイルを書き換えて(といっても
セマンティックスは等価な別の書き方にしてるだけ)
IntelliSense friendly な boost を作成中。
808: デフォルトの名無しさん [sage] 2007/10/03(水) 08:31:55 AAS
boost::xtime って使い方がよくわからない・・・
というか、スレッドライブラリの使い方について
日本語での説明ってないかなぁ。
そろそろ _begin_thread (Win32) とかを
生で呼び出すのがみっともなく見えてきた。
809(1): デフォルトの名無しさん [sage] 2007/10/03(水) 11:23:24 AAS
>>806
継承っていう非常に強いクラス間の結合を回避できるってのが一番大きいことなんじゃないかな?
まぁvtblが要らんからインターフェースを実装するクラスのサイズが少し小さくなるとか、
vtbl経由じゃなくて直接インスタンスのポインタから呼びだされるから少し呼びだしのコストが減るとか
ちょっとしたメリットもあるけどさ
810: デフォルトの名無しさん [sage] 2007/10/03(水) 12:55:44 AAS
つ 実行時継承
811: デフォルトの名無しさん [sage] 2007/10/03(水) 13:31:53 AAS
仮想関数でコンパイラでチェックをしながら作って
CRTPで最適化するってのがいい気がする。
812: デフォルトの名無しさん [sage] 2007/10/03(水) 13:44:44 AAS
>>807
emacs + flymake
813: デフォルトの名無しさん [sage] 2007/10/03(水) 14:02:36 AAS
intellisenseの代替になってねーじゃん
814: デフォルトの名無しさん [sage] 2007/10/03(水) 15:20:25 AAS
boost::optional とか内部的に boost::mpl を使っているのが
あるけど、boost::mpl みたいに高度(変態)なテンプレート
の使い方していると IntelliSense は混乱するみたいだねぇ。
815: デフォルトの名無しさん [sage] 2007/10/03(水) 18:04:31 AAS
2008で改善…か?
816: デフォルトの名無しさん [sage] 2007/10/03(水) 18:09:40 AAS
真面目にパースしてたら重くなるだけじゃね
817: デフォルトの名無しさん [sage] 2007/10/03(水) 19:14:32 AAS
boostに参加したいけど英語できないし諦めるわ。
818(2): デフォルトの名無しさん [] 2007/10/04(木) 00:26:03 AAS
BOOST_PP_SEQの要素をカンマで区切って結合するにはどうしたらいいのでしょうか?
以下のようにやると、
int a,int b
になってしまう・・・
#define SEQ (int a)(int b)(int c)(int d)
#define OP(s, state, x) state,x
BOOST_PP_SEQ_FOLD_LEFT(OP, BOOST_PP_SEQ_HEAD(SEQ), BOOST_PP_SEQ_TAIL(SEQ))
819(1): デフォルトの名無しさん [sage] 2007/10/04(木) 00:55:23 AAS
>>818
コールバックマクロが裸のコンマを含むトークン列に展開されると色々まずい。
BOOST_PP_SEQ_ENUMを使うべし。
820: 818 [sage] 2007/10/04(木) 00:56:29 AAS
>>819
ありがとう。
BOOST_PP_SEQ_ENUM(SEQ)
でできました。
821(2): デフォルトの名無しさん [sage] 2007/10/04(木) 01:16:28 AAS
>>806 >>809
superclass に virtual 書き忘れているケースで有効
822(1): デフォルトの名無しさん [] 2007/10/04(木) 01:59:58 AAS
>821
それだけかよっ
gccなら警告してくれるんだぜ?
823: デフォルトの名無しさん [sage] 2007/10/04(木) 02:08:10 AAS
基底クラスを自分が作ってないという状況を想定するナリよ
824: デフォルトの名無しさん [sage] 2007/10/04(木) 02:33:00 AAS
>>822
そういう問題じゃないだろw
設計として上の継承階層だけvirtualにしたいケースだろ。
>>821は「し忘れてる」なんて書いてるけど、boost.interfaces使っても、
規定クラスの方もvirtualになるわけじゃないんだから。
825: デフォルトの名無しさん [sage] 2007/10/04(木) 03:22:43 AAS
しかし、つくづくtemplateって凶悪だよな。
826(1): デフォルトの名無しさん [sage] 2007/10/04(木) 03:36:20 AAS
降りるヤツと残るヤツ・・それだけだ
827: デフォルトの名無しさん [] 2007/10/04(木) 09:12:02 AAS
いわゆるアクセス関数 (get/setみたいなメソッド)のために
便利な仕組みって boost に用意されていたりしません?
828: デフォルトの名無しさん [sage] 2007/10/04(木) 18:43:14 AAS
中の人じゃないけど。
http://d.hatena.ne.jp/Cryolite/20041108
829: デフォルトの名無しさん [] 2007/10/04(木) 19:13:41 AAS
レビューってもうされてるのかな?
http://svn.boost.org/trac/boost/browser/sandbox/boost/property
830: デフォルトの名無しさん [sage] 2007/10/04(木) 19:49:43 AAS
なんかキモイね
831: デフォルトの名無しさん [sage] 2007/10/05(金) 06:55:43 AAS
似たようなの作ろうとした事あるけど var.prop.member() のように
直接プロパティのメンバにアクセスできなくて諦めた。
やっぱC++0xを待つしかないか。
832(1): デフォルトの名無しさん [] 2007/10/05(金) 13:25:26 AAS
C++0xでは言語仕様としてそういう機能が入るの?
833(5): デフォルトの名無しさん [] 2007/10/06(土) 01:32:23 AAS
mplで質問です。
mplでは、文字列のリテラルを扱うことはできるでしょうか?
具体的には、3文字または4文字(それ以外はない)の文字列リテラルを受け取って、ある文字cが入っていれば
mplのtrue_、入っていなければfalse_を返すメタ関数を書きたいのです。
可能でしょうか?
834(2): デフォルトの名無しさん [sage] 2007/10/06(土) 02:43:19 AAS
>>832
N2389のリストにはそれっぽいもの(N1615)があるが、Not ready for C++0x になってる
残りの期間を考えると採用される可能性は低い
>>833
たぶん無理
835: デフォルトの名無しさん [] 2007/10/06(土) 08:46:05 AAS
>>834
じゃぁ言語仕様としてじゃなくてやっぱりテンプレート
としての実装でやらなきゃだめなんだね。
例の boost の sandbox のやつが正式に入ってくれればいいなぁ。
836: デフォルトの名無しさん [sage] 2007/10/06(土) 12:18:52 AAS
要らないなぁ
上下前次1-新書関写板覧索設栞歴
あと 165 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.026s