[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 2chのread.cgiへ]
Update time : 05/08 21:12 / Filesize : 199 KB / Number-of Response : 759
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Boost総合スレ part8



1 名前:デフォルトの名無しさん [2009/08/28(金) 16:53:36 ]
過去スレ
part 7 pc12.2ch.net/test/read.cgi/tech/1232367742/
part 6 pc11.2ch.net/test/read.cgi/tech/1207749841/
part 5 pc11.2ch.net/test/read.cgi/tech/1192662575/
part 4 pc11.2ch.net/test/read.cgi/tech/1175663346/
part 3 pc11.2ch.net/test/read.cgi/tech/1158991211/
part 2 pc8.2ch.net/test/read.cgi/tech/1139313234/
part 1 pc8.2ch.net/test/read.cgi/tech/1091198276/

■関連サイト■
Boost C++ Libraries
www.boost.org/

Boost 翻訳プロジェクト
boost.cppll.jp/HEAD/

Let's Boost
www.kmonos.net/alang/boost/

boost info
shinh.skr.jp/boost/

566 名前:デフォルトの名無しさん mailto:sage [2010/02/07(日) 23:01:47 ]
[Regex]
Improve regex performance on msvc by removing statically allocated recursion stack, and using a std::vector instead.
[Program_options]
fix in winmain, Fixes #3879
[Serialization]
Added comment regarding intentional anonymous namespace in header
[Statechart]
simple_state::context() now also finds bases of state types.
[Uuid]
switch from the Boost Test Library to boost/detail/lightweight_test.hpp
moved uuid generators into their own file
[Wave]
Wave: added found_unknown_directive preprocessing hook, bumped version number

亦、libs_for_build_boost.rarもICUを4.3.4にアップデート致しました。

567 名前:デフォルトの名無しさん mailto:sage [2010/02/07(日) 23:07:56 ]
boost/exception.hpp が使えなくなってるぅぅぅるうううるるううーorz
boost/exception/all.hpp を使えだってさ

568 名前:デフォルトの名無しさん mailto:sage [2010/02/08(月) 00:35:02 ]
>>567
さすがにこの変更はないわ
boost/exception.hppでall.hppをincludeしてくれたらよかったのに

569 名前:デフォルトの名無しさん mailto:sage [2010/02/08(月) 10:08:38 ]
>>562
海外製のライブラリはそんなのが多いような気がする。
VisualStudio限定の話になるけど、文字セットを「Unicode文字セットを使用する」に設定するとおかしくなる感じで。

570 名前:デフォルトの名無しさん mailto:sage [2010/02/08(月) 10:22:46 ]
boost::exceptionは破壊的変更やりすぎ
もっと練ってから入れて欲しかった

571 名前:デフォルトの名無しさん mailto:sage [2010/02/08(月) 20:05:03 ]
何も考えずにall.hppに変更してたんだけど、そんなことになってたのか。
spiritに続いてこの仕打ちは酷いよ。


572 名前:564 mailto:sage [2010/02/08(月) 21:31:20 ]
boost::exceptionも使ったことないから分からん。
やっぱboostに入るぐらいだから便利なんだろうか。
紹介を見てもそんな例外をばりばりに使用しないしって思っちゃう。。。

573 名前:デフォルトの名無しさん mailto:sage [2010/02/08(月) 22:52:17 ]
例外でエラー通知する場合は便利じゃない

574 名前:デフォルトの名無しさん mailto:sage [2010/02/09(火) 05:19:46 ]
Boost 1.42
shared_ptr<string>がBoost.Serializationでシリアライズできない。
STATIC_ASSERTにひっかかる。



575 名前:デフォルトの名無しさん mailto:sage [2010/02/09(火) 14:04:38 ]
>>561
結局、command_line_parserに渡す前に自前で処理しました。
GNU拡張とはいえgetoptにできることぐらいはできないと困るね(´・ω・`)

576 名前:デフォルトの名無しさん mailto:sage [2010/02/09(火) 14:05:14 ]
shared_ptr まだシリアライズできないバグがあるのかw
何やってんだw

577 名前:デフォルトの名無しさん mailto:sage [2010/02/09(火) 19:16:31 ]
Boost.Serializationって
どんなときに使うのでさ?

578 名前:デフォルトの名無しさん mailto:sage [2010/02/09(火) 19:18:30 ]
データを直列化し総サイズを算出して現在進行しているアルゴリズムの進捗状況と照らし合わせて
progress_displayに情報を渡す。

579 名前: [―{}@{}@{}-] デフォルトの名無しさん mailto:sage [2010/02/09(火) 19:35:36 ]
1.41と1.42は本当にちゃんとテストしているのだろうか

580 名前:デフォルトの名無しさん mailto:sage [2010/02/09(火) 20:29:12 ]
>>578
progress_displayすげー。

581 名前:デフォルトの名無しさん mailto:sage [2010/02/10(水) 09:49:53 ]
>>577
処理状態をファイルか何かに保存したりしたい時
例えばゲームのセーブロードとか、CGIのセッション保存とか

582 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 06:09:02 ]
設定の保存と読み込みによく使ってるわ
iniとか使う気になれんし

583 名前:577 mailto:sage [2010/02/11(木) 11:47:05 ]
>>581-582
ありがとう。
なるほど。途中状態の記録とかに便利なのか。。。

584 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 18:53:45 ]
今までBoost無しでスタティックライブラリ開発してたんだけどもうBoost入れるわ・・・
でもさ,Boostに依存しまくったライブラリとかみんな使ってくれるかな・・・



585 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 19:11:18 BE:420223627-2BP(0)]
Boostを入れなくても使えるようにすればいいんじゃないか?

586 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 19:26:29 ]
そうか分離出来るかわからないけどヘッダにboostに依存する型が入らないようにしてみる
自力ビルドしたい人とかサポート外環境の人には諦めてboost入れてもらうことにしよう・・・

587 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 21:56:16 ]
矢沢「え?せっかくのC++なのにBoostついてないの・・?・・・・・それはもったいない・・」

588 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 23:33:38 ]
STLでさえ禁止のところあるからなぁ・・・
Qtはおすすめ

589 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 00:19:46 ]
>>584
依存しまくったライブラリでも有用性があるならおkでしょう。
ただしそのライブラリが複数あるなら、依存しないでかけるライブラリは
その方が良いのかもしれんけど。



590 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 00:24:33 ]
>>588
> STLでさえ禁止のところあるからなぁ・・・
別にそんな会社は潰れちまえばいいだけだろ。
・・・え?ウチの会社・・・?

591 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 00:34:20 ]
テンプレートが使えるだけありがたく思え

592 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 05:18:35 ]
Boost使えなす(´;ω;`)
↑STLが使えるだけマシだろ
↑テンプレート使えるだけマシだろ

593 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 06:18:03 ]
>>592
この板の「職場で使わせて貰えない」系の嘆きも、そういう順で変化してってるよね。
俺が最初にこの板来た頃はテンプレートで、次にSTLになって、今はBoost。
「C++0x使わせてもらえない」も来るかな。autoくらい使わせてくれよ的な。

594 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 08:30:16 ]
Boost使えなす(´;ω;`)
↑STLが使えるだけマシだろ
↑テンプレート使えるだけマシだろ
↑C++使えるだけマシだろ
↑C使えるだけマシだろ
↑アセンブラ使えるだけマシだろ



595 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 08:33:03 ]
さすがに意味がわからん

596 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 09:30:18 ]
boostの正規表現機能を使いたいのですがあれって性的リンクだそうですが
ライセンスとかどうなんでしょう?

597 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 09:39:48 ]
性的リンク



ハアハア

598 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 10:20:21 ]
boostライセンスは凄く緩いんで気にすることは無いよ
boostライセンスの条文のコピーとboost使ってますっていう記述を
readmeにでも書いてればおk

599 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 10:28:39 ]
そんな事しなくてもソースコード中(公開しなくてもいい)に
boostのライセンスのせときゃいいよ

600 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 11:15:05 ]
静的リンクが問題になるライセンスってたとえば何だ?

601 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 11:16:12 ]
LGPL

602 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 11:31:30 ]
いうと思った。
それは問題にならない。
LGPLはオブジェクトコードがどういうものかというのを定めてはいない。
動的リンクだろうと静的リンクだろうと、それはLGPLの定義の範囲外にある。

LGPLでは、ソースコードとして、どのように使っているかが問題になる。

603 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 11:56:02 ]
xpressive
という話が出ないのはなんでだ?

604 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 12:09:00 ]
え、出る文脈じゃないと思うけどなぁ。



605 名前:regex mailto:sage [2010/02/12(金) 12:20:58 ]
俺は規格にも取り入れられた由緒正しき標準ライブラリだ。
どこの馬の骨とも知らねぇライブラリと一緒にしてくれるな。

そうそう、progress_display君が、今度お前と一緒に飲みに行きたいらしいぜ。
せいぜい付き合ってやれよw

606 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 12:37:47 ]
>>602
「オブジェクトコード」という言葉は定義しなければならない性質のものなのだろうか。
それに「リンク」という言葉はオブジェクトコードという言葉に対しては使われていない。

607 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 16:50:36 ]
>>603-604
いや、boostの正規表現はライブラリをリンクしなければいけない
>>596 が思い込んでる気がしてな。
xpressive 使えばそもそもリンクなんか必要ないだろうと。

>>605
コンパイル時間の増加以外に具体的にまずいところがあるなら教えてくれ。

608 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 17:29:40 ]
tr1ならregex入ってるからboost要らないのでは

609 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 19:39:49 ]
>>608
大丈夫そうですね
d.hatena.ne.jp/yamadila/20080825/1219595555

610 名前:デフォルトの名無しさん [2010/02/13(土) 01:40:16 ]
>>596
> boostの正規表現機能を使いたいのですが
> あれって性的リンクだそうですが
> ライセンスとかどうなんでしょう?
読んでみ?
参考日本語訳はttp://hamigaki.sourceforge.jp/doc/html/license.html
要するに、

1.ソースコードの形で流用するなら
ライセンス文全部と著作権表示をすれば流用OK。
2.コンパイルしちゃってバイナリの形で利用・再配布等するなら
全くライセンス文や著作権表示すら不要。



611 名前:デフォルトの名無しさん mailto:sage [2010/02/13(土) 02:09:48 ]
GoogleIMEはやたらと性的を勧めてくるから困る

612 名前:デフォルトの名無しさん [2010/02/13(土) 02:22:22 ]
ublasですが、ublas::vectorをublas::matrixとして
式に組み込みたいのですが、どうすればいいでしょうか?

// 例えばvector2をmatrix2x1のように扱う。
ublas::vector< double > v( 2 ); // vector2
ublas::matrix< double > m( 2, 1 ); // matrix2x1
m.assign( v ); // <-これが通るようにしたい。

613 名前:612 mailto:sage [2010/02/13(土) 02:37:45 ]
一応ublas::outer_prod()を使えば
vectorからmatrixへ変換出来ることはわかりました。
他にもっと良い方法があれば教えてください。

614 名前:デフォルトの名無しさん mailto:sage [2010/02/13(土) 03:09:08 ]
>ublasですが、ublas::vectorをublas::matrixとして
>式に組み込みたいのですが
漏れの読解力じゃここが分からんのだが、結局何がしたいのか??



615 名前:デフォルトの名無しさん mailto:sage [2010/02/13(土) 03:11:38 ]
matrixの一部を更新するのにvectorを使いたいって事じゃないの

616 名前:612 mailto:sage [2010/02/13(土) 03:29:46 ]
わかりづらくてすみません。
>>614さんのとおりです。

617 名前:デフォルトの名無しさん mailto:sage [2010/02/13(土) 03:31:04 ]
それなら
ublas::column(m, 0).assign(v) // m の第0列に v を代入
でいける
同じように ublas::row(m, i) で m の第i行が取得できる
他には ublas::slice とか ublas::project とかで部分ベクトルと部分行列も取れるよ

618 名前:デフォルトの名無しさん mailto:sage [2010/02/13(土) 04:39:35 ]
すみません、他スレでも質問したのですが用途が異なるとのことでこちらで聞かせてください
開発環境:vc++ 2008 Express Edtion
boostのshared_ptrを使いメモリ管理を楽にしようかと思っているのですが、
shared_ptrによって隠蔽されたポインタはインテリセンス(コード保管)によってpublicな変数や関数を参照できないことに気づきました。

たとえば
class Test {
public: int a;
Test() {
a = 100;
}
~Test() {
}
};
というクラスがあり。
コードの一部に以下のようなコードを仕込み試したところ。


shared_ptr<Test> p(new Test());
printf("%d\n", p->a);//インテリセンス無効
Test *p2 = new Test();
printf("%d\n", p2->a);//インテリセンス有効

スマートポインタを介したpはインテリセンスできず、直接のポインタであるp2はインテリセンスでaを参照できました。
僕は隠蔽されているのでインテリセンスができないのは当たり前のことのように感じたのですが、
そのスレではスマートポインタもインテリセンスできるはずと言われました。
なんらかの設定、もしくはアドインのようなものを入れればスマートポインタはインテリセンスできるのでしょうか

619 名前:デフォルトの名無しさん mailto:sage [2010/02/13(土) 05:23:20 ]
Intellisenceによる解析はバックグラウンドで進行してるから、
補完がきかないのはshared_ptr<T>の解析が済んでいないか、
もしくはどこかで解析に失敗してDatabaseが壊れてる。

IDEを開き直すか、あるいはソリューションフォルダ内の.ncbファイルを削除して
しばらく待ってればそのうち補完がきくようになる。

再現性100%でIntellisence壊れるようなヘッダを別のところでincludeしていた場合、
(boost::shared_ptrとは関係なく)いつまでも解析が終わらないことがあるが、
その場合はそれがIntellisenceの限界。諦めろ。

620 名前:デフォルトの名無しさん mailto:sage [2010/02/13(土) 05:34:37 ]
shared_ptrだけの話ならboostやめてtr1だけの方がIntellisenceの死ぬ確率低いんじゃないか?
何れにせよ過度な期待はしない方がいいな
動けばラッキーくらい。最初から諦めてれば何とも思わなくなる

621 名前:618 mailto:sage [2010/02/13(土) 05:55:44 ]
ありがとうございます。他のtmplateを扱うクラスでIntellisenceしてみたところ有効であることに気づきました。
クラッシュもしくは解析に時間がかかっていると考えます。
tr1ありがとうございます。検討します。

620さんのいうとおり基本的には動かないものと考え、動いたときに「おっ」って言おうと思います。


622 名前:618 mailto:sage [2010/02/13(土) 06:02:21 ]
tr1でIntellisenceできました、ありがとうございます!

623 名前: [―{}@{}@{}-] デフォルトの名無しさん mailto:sage [2010/02/13(土) 08:22:34 ]
2010のIntelliSenceに期待だな

624 名前:612 mailto:sage [2010/02/13(土) 11:06:00 ]
>>617
vectorをmatrixに、ではなくて
matrixから部分vectorを得て、という考え方に変えるんですね。
とてもよくわかりました。その方向で修正します。
ありがとうございました。



625 名前:デフォルトの名無しさん mailto:sage [2010/02/13(土) 13:26:01 ]
>>611
> GoogleIMEはやたらと性的を勧めてくるから困る
なるほど。性的と静的を比較して、どっちが多く検索されている
かといえば無論・・・。。。ってことか。


626 名前:デフォルトの名無しさん mailto:sage [2010/02/14(日) 14:50:34 ]
>>562
このスレのアイドル progress_display への侮辱はゆるさないよ?

627 名前:デフォルトの名無しさん mailto:sage [2010/02/18(木) 15:23:34 ]
あ?プロディスディスってんの?

628 名前:デフォルトの名無しさん mailto:sage [2010/02/18(木) 23:39:24 ]
Boost1.41.0以降でspiritV1使うときはboost::spirit::classicを使うことになるんだけど、
これって1.41以前のspiritと動作変わってたりする?

629 名前:デフォルトの名無しさん mailto:sage [2010/02/19(金) 20:04:25 ]
更新しました。trunkは1.43に移行しました。
ttp://booster.x0.to/
以下更新内容の一部
[Fusion]
adapt plain old array types (1)
[Typeof]
Apply variadic functions patch from Sergey Zubkovsky.
[Spirit]
Spirit: raw[] and lexeme.hpp[] do not pre-skip anymore
Spirit: adding no_skip[] directive, docs, tests, etc.
added code for pre-skipping "implicit lexeme" rules
[Lexical_cast]
Use BOOST_LCAST_THROW_BAD_CAST consistently.
[Functional]
Stop using the deprecated BOOST_HAS_ macros in unordered and hash.
[Unordered]
Stop using the deprecated BOOST_HAS_ macros in unordered and hash.
[Thread]
Changed boost.thread to use BOOST_NO_RVALUE_REFERENCES rather than BOOST_HAS_RVALUE_REFS
Overload boost::move for thread& and thread&&
[Static_assert]
Use BOOST_NO_STATIC_ASSERT
[Archive]
change to avoid ">>" syntax error when passed a template instance
[Property_tree]
Make BOOST_PROPERTY_TREE_THROW an alias for BOOST_THROW_EXCEPTION.
[Program_options]
Robustify disambiguation of full/approximate matches.
Fixes #3942.

630 名前:デフォルトの名無しさん mailto:sage [2010/02/20(土) 12:44:28 ]
>>628
名前空間移動した以外の変更はせずに使ってるけど。
名前空間の移動はコードや動作は変えないって意思表示だと思ってる。



631 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 01:09:47 ]
過疎ってるな。どうした?

632 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 01:14:44 ]
ネタがない

633 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 01:17:31 ]
vaultに沢山あるだろうが軟弱者め。
λ式で脳みそ犯されろ。

634 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 12:43:22 ]
C++相談室で大概のboostネタは回答完了してしまうからな。
boostネタを回答するときは、ここのURLも張ろうぜ



635 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 12:47:25 ]
ご自由にどうぞ

636 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 12:50:56 ]
>>633
vaultのお勧めは何?俺はrangeExに注目している。といいつつoven使ってるが。

637 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 14:15:12 ]
C++相談室においてboostに関する質問が出た場合のテンプレってあるの?
「現行C++においてboostは標準のライブラリではないから処理系依存スレかboostスレへどうぞ」

638 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 14:45:35 ]
質問に対する解答でboost使えばできる
ってのがたまにある

639 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 14:46:30 ]
>>633
vaultとかsandboxとか、そこまで手を広げるのか。


640 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 15:16:27 ]
shared_ptrとかstd入りしたクラスもあるし

ところでどっちを使えばいいんだ?

641 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 15:17:06 ]
std入りしたクラス

642 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 15:19:07 ]
>>640
許可されている方。
もうちょっとしたらstdを使えばいいんでね?


643 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 15:38:39 ]
boostのほうなら、標準非対応なコンパイラでも気の利いた動作をしてくれそう。
といってもMSVCとGCCしか使ってないけど。

644 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 18:41:36 ]
一応こんなスレもある訳だが…
Boost C++ Libraries Sandbox
pc12.2ch.net/test/read.cgi/tech/1250396380/



645 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 20:02:13 ]
>>644
ウチより閑散としとるw

646 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 20:51:02 ]
Oven/Egg総合スレ part1
pc12.2ch.net/test/read.cgi/tech/1231080841/

part1 がむなしい。
STL スレも含めて template 統合で良かったような気がするんだけどね。

647 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 21:01:08 ]
次が出るかも分からないし前スレがあったわけじゃないのにいきなりpart1ってなんだよ・・・

648 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 22:01:20 ]
boost::ublas
のmatrixへ、C配列からブロックごとコピーする方法ってありますか?
・matrixの使っているメモリが連続しているのか
・sliceか何かでブロックのアドレスを外から代入することができるか
の二点が問題になりそうですが。

649 名前:デフォルトの名無しさん mailto:sage [2010/03/01(月) 02:03:59 ]
vaultはその辺のC++よく分かってません的なのが適当に放り込んだクソコードが
普通にあるから論外

650 名前:デフォルトの名無しさん mailto:sage [2010/03/04(木) 18:55:09 ]
>>648
matrix<T, row_major> mはCの2次元配列とメモリ配置が一致してる
初期化なりresizeなりであらかじめメモリを確保しておけば、
&(m(0, 0))で先頭アドレス取り出せるからメモリ配置考えてコピー可

651 名前:デフォルトの名無しさん mailto:sage [2010/03/05(金) 16:27:23 ]
>>650
ありがとうございます。

あと
&(m.data()[0])
とかも使えそうですね。

652 名前:デフォルトの名無しさん [2010/03/06(土) 01:12:35 ]
俺もvaultにクソコード突っ込んだけど、誰も反応してくれんな。

653 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 01:41:16 ]
>>652
お前みたいな奴が仕事増やしてるんだよ死ねよクズが

654 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 17:27:21 ]
Boost 1.42 + VC9

// コード
typedef void (alloc_func)( );
#include <boost/property_tree/detail/rapidxml.hpp>

// エラー
error C2226: 構文エラー : 'alloc_func' 型指定子の前あるいは内部で構文エラーが発生しました。

boost::property_tree::detail::memory_pool内での
> typedef void *(alloc_func)(std::size_t);
という宣言で引っかかっている。
グローバルのalloc_funcの宣言を、インクルード後に書いたらエラーにならなかった。

VC9のバグだろうか?



655 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 17:44:53 ]
>>654
エラーになるところを中心に切り出していけば、もっと条件絞れるんじゃないの?

656 名前:654 mailto:sage [2010/03/07(日) 17:54:26 ]
// 最小条件はたぶんこれ
typedef void (func)( );
namespace foo {
typedef void* (func)( );
}

// これならおk
typedef void (func)( );
namespace foo {
typedef void* pvoid;
typedef pvoid (func)( );
}


657 名前:654 mailto:sage [2010/03/07(日) 17:58:52 ]
なので、rapidxml.hpp の
typedef void *(alloc_func)(std::size_t); // Type of user-defined function used to allocate memory

の行を
typedef void *alloc_func_result_type;
typedef alloc_func_result_type (alloc_func)(std::size_t); // Type of user-defined function used to allocate memory

に書き換えてやれば解決するはず。

658 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 18:15:18 ]
>>657 それ解決やない、回避や。

659 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 18:18:27 ]
>>656
そんなのが通らないならコンパイラのバグだろさすがに。

660 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 20:34:45 ]
さすがM$…

661 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 20:37:42 ]
typedef void (*func)( );
じゃなかったっけ?
typedef void (func)( );
こう買いてもおkなんだっけ

662 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 20:40:50 ]
typedef void* (func)( );
void*を返す関数

typedef void (*func)( );
戻り値なしの関数へのポインタ

typedef void (func)( );
戻り値なしの関数

合ってる?

663 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 20:41:17 ]
>>661
上は関数ポインタの型 void(*)(void)
下は関数の型 void (void)

664 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 20:45:20 ]
昔関数ポインタを引数に取って関数ポインタを返す関数ポインタを引数に取る関数が
typedefなしで書かれてて泣いた



665 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 21:08:29 ]
func)( が funcX に見えて謎の会話に見えた…

666 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 21:12:49 ]
>>664
haskell記法で書けばこうか
func :: ((a -> b) -> (c -> d)) -> e






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<199KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef