Boostを語れゴラァ pa ..
175:デフォルトの名無しさん
06/10/22 01:05:59
template <typename A, typename B, typename C> int foo(A a, B b, C c) { return 0; }
template <typename A, typename B> int foo(A a, B b) { return 0; }
に対して、後者の関数をbindするつもりで
boost::bind(foo<int,int>, _1, 100);
すると、no matching function for call to ‘bind(<unresolved overloaded function type>, boost::arg<1>&, int)’
とか言われてしまうんだが、これって回避策ありますか?
gcc4.1です
176:デフォルトの名無しさん
06/10/22 01:12:24
>>175
boost::bind(static_cast<int (*)(int, int)>(foo), _1, 100)
177:デフォルトの名無しさん
06/10/22 12:38:25
>>175
class Void{}Void_v;
template<class T1, class T2, class T3=Void>struct select_f;
の特殊化を作ってfooの引数にVoid型があるなしで選択するとかは。
178:デフォルトの名無しさん
06/10/22 12:42:09
>>177
は?
179:デフォルトの名無しさん
06/10/22 12:43:22
>>177
175は関数テンプレートな訳だが..
180:177
06/10/22 13:30:36
>>179
えーと、あいまいな関数オーバーロードの解決にはキャストあたりが手っ取り早いと思うけど
そこで、
template <typename A, typename B, typename C>
int foo(A a, B b, C c) { return select_f<A, B, C>()(a, b, c); }// put away foo else
・・・
boost::bind(foo<int,int, Void>, _1, 100, Void_v);
こんな感じでキャストを使わない方法の案を提供したかったわけですよ。
181:デフォルトの名無しさん
06/10/22 13:39:27
キャストを使わないでそれを使うことに何の意味があるの?
あと、>177のように何の前置きにもなしに言って、理解してくれるエスパーだと思ったの?
182:177
06/10/22 13:55:49
>>181
キャストを使わない。
キャストを使ったときに起きるテンプレート関数の特殊化に対しての曖昧性をなくせる(たぶん)。
> あと、>177のように何の前置きにもなしに言って、理解してくれるエスパーだと思ったの?
タイピングの勢いだ。
183:デフォルトの名無しさん
06/10/22 14:28:28
> キャストを使ったときに起きるテンプレート関数の特殊化に対しての曖昧性
具体例が欲しいな
184:デフォルトの名無しさん
06/10/22 15:58:19
boost::lambdaのunlambdaとprotectがよくわからないんだぜ
185:デフォルトの名無しさん
06/10/22 16:38:15
>>183
たとえば、>175を
template <typename A, typename B> int foo(A a, B b); (b)
template<class A, class B>int foo(A*,B*); (c)
こんな(c)を追加して、(c)or(b)のどちらかをbindで使いたい場合
このオーバーロードの解決には結局、関数オブジェクトが手っ取り早いと思います。
186:デフォルトの名無しさん
06/10/22 17:13:50
>>185
それ、曖昧か?
後者は foo() についてポインタ型を扱う場合の特殊化を宣言しているので、
引数の型に応じて定義が使い分けられるだけじゃないの?
↓キャストでもコンパイルできたし。
int a, b;
(static_cast<int (*)(int*, int*)>(foo))(&a, &b);
187:185
06/10/22 17:59:14
>>186
boost::bindは?
188:デフォルトの名無しさん
06/10/22 18:02:01
>>187
boost::bind(static_cast<int (*)(int*, int*)>(foo), _1, &b)(&a);
これぐらい自分で補完しろよ。
189:デフォルトの名無しさん
06/10/22 18:35:54
>>188
コンパイル出来るんだ。へぇー。
190:デフォルトの名無しさん
06/10/22 19:04:01
がんばって早く「ごめんなさい」の言える大人になろーね。
191:デフォルトの名無しさん
06/10/22 19:23:43
ごめんなさい
192:デフォルトの名無しさん
06/10/22 19:40:14
>>190
だって食い下がって逆撫でしていれば
>>188みたいな知識ひけらかし大好き君が無償で色々書いてくれるんだもん。
こういう子は利用しない手はないって。
193:デフォルトの名無しさん
06/10/22 19:57:34
>>192
普通に質問すればいいのに、なんでわざわざそんな手段をとる必要がある?
194:デフォルトの名無しさん
06/10/22 20:19:00
回答をもらえる確率が上がるから。
195:デフォルトの名無しさん
06/10/22 20:25:02
まぁ、スレを客観的に眺めると、知識ひけらかし大好き君は>177と分かるんだけどね。
>176で終わってる質問だし。
それに>188の知識は>176以上のものではないし。
散々引っ張っといて同じモノしか出ないんじゃ、割に合わない。
単純に悔しくなった>177君が利用してやった振りしてるだけ。
196:デフォルトの名無しさん
06/10/22 20:47:18
>>182 に「たぶん」って書いてあるのは、ただの妄想ってことでいいの?
197:189
06/10/22 23:35:55
>>188
ごめん。
だれもつっこんでくれないから寝る前に一言
> boost::bind(static_cast<int (*)(int*, int*)>(foo), _1, &b)(&a);
ちょっと言い訳・・・・「&a」参照の罠に嵌ってました。以上です。では、おやすみ。
198:デフォルトの名無しさん
06/10/25 18:14:32
std::map みたいに扱えて、実はバックエンドがデータベースだなんて
すてきな使い心地のライブラリって無いものでしょうか。
199:デフォルトの名無しさん
06/10/25 19:42:34
boost::graph
と
ASLの adobe::forest
が車輪の再発明ぽい点について
200:デフォルトの名無しさん
06/10/25 20:28:36
ASL かわいいよ ASL
201:デフォルトの名無しさん
06/10/25 23:26:50
あるあ…(ry >198
202:デフォルトの名無しさん
06/10/26 00:02:53
>>201 あるんですか?
なんて言うライブラリか教えて貰えませんか?
今、std::map を boost::serialization でディスクに書き出しているんですが、
かなりデータ量が大きくなってきて、すべてをオンメモリで処理するのが
苦しくなってきました。
203:デフォルトの名無しさん
06/10/26 03:11:33
AllegroCache. これ最強。
204:デフォルトの名無しさん
06/10/26 09:38:05
boostいいね。使っているとスルメみたいに味わい深いわ。
しかし古い設計で組んでいた俺の昔のコードは一体何だったんだと。 orz
205:デフォルトの名無しさん
06/10/26 11:07:28
STLぽい数式処理と数値計算のできるライブラリーってないでしょうか?
せめて多項式か2次式だけでもできると
少し数値計算プログラムが楽になる
206:デフォルトの名無しさん
06/10/26 15:38:08
ASLの
adobe::dictionary_t
はstd::mapよりたくさん要素あつかえるとかtutorialに書いてあった
207:デフォルトの名無しさん
06/10/26 16:19:02
>>198
Berkeley DBでも使え。
208:201
06/10/27 00:43:04
ねーよ
209:デフォルトの名無しさん
06/10/27 08:40:10
>>201>>208
馬鹿?
210:デフォルトの名無しさん
06/10/27 11:05:09
>>198
つlibstldb4
211:デフォルトの名無しさん
06/10/27 16:20:16
>>198
なぜ boost スレへ?
212:デフォルトの名無しさん
06/10/27 20:13:30
std::plus()はreturn a+b;ですが、return a+=b;してくれる関数オブジェクトは無いでしょうか?
手前で作ればいいのですが、boostにあるならそっちをつかいたく。
213:デフォルトの名無しさん
06/10/27 20:57:59
_1 += _2
214:デフォルトの名無しさん
06/10/27 21:06:44
>213
それはコンパイルできんだろ..
215:デフォルトの名無しさん
06/10/27 21:11:33
class MyPlus : public std::plus,
boost::addable< point<T>
, boost::subtractable< point<T>
>
{
MyPlus operator+=(const MyPlus&);
};
でいけたらいいな
216:デフォルトの名無しさん
06/10/27 21:16:44
>>214
using namespace boost::lambda;
217:デフォルトの名無しさん
06/10/27 21:23:35
std::accumulate は?
218:217
06/10/27 21:25:48
あ、関数オブジェクトじゃなかったorz
219:デフォルトの名無しさん
06/10/27 21:30:13
>>216 +=はオーバーロードされていないと思うが。
220:デフォルトの名無しさん
06/10/27 21:38:25
んなあほな。
複合代入演算子はクラスの外からでも多重定義できるのだから、
boost::lambdaで使えないわけが無い。
221:デフォルトの名無しさん
06/10/27 21:42:58
+=は使える。
クラス外から多重定義できるかどうかは関係ないような。
222:212
06/10/27 21:51:39
>>213
できました。ありがとう
223:デフォルトの名無しさん
06/10/27 21:52:36
そうか、_1なんかはそれ自身ラムダオブジェクトだったな。
224:デフォルトの名無しさん
06/10/27 23:28:35
>>219
死ねカス
225:デフォルトの名無しさん
06/10/30 18:40:49
話題が無いな
226:デフォルトの名無しさん
06/10/30 18:54:49
話題ねぇ…
URLリンク(opensource.adobe.com)
今レビューされている、Generic Image Library が通れば、
各種画像サポートが実現されるわけで、非常に期待してる。
227:デフォルトの名無しさん
06/10/30 20:09:51
ほお adobeがopensourceとは..
228:デフォルトの名無しさん
06/10/30 22:09:56
通ればってどういうこと?
229:デフォルトの名無しさん
06/10/30 22:14:22
URLリンク(lists.boost.org)
ちうこと。
230:デフォルトの名無しさん
06/10/30 22:29:06
adobe ASLで
URLリンク(japan.zdnet.com)
ユーザーインターフェイスの自動生成?
本当にできるの?
231:デフォルトの名無しさん
06/10/30 22:31:59
なぜvigraじゃなくてgilなんだ
機能の豊富さからいったらvigraが上だろう
URLリンク(kogs-www.informatik.uni-hamburg.de)
232:デフォルトの名無しさん
06/10/30 22:42:28
>>231
作者がboostに提案したか否かだろ
233:デフォルトの名無しさん
06/10/30 23:51:16
>>230
発表された頃に斜め読みした限りでは
プログラマとデザイナで仕事を分離するという程度の内容だったような?
234:デフォルトの名無しさん
06/10/31 01:39:42
>>232
どの記事だったか忘れたけど
>vigraのほうが好きだけど,vigraは作者が一人だし、gilが採択されたら
>その作者がんばるだろうからいいじゃん
とか書いてあった
235:234
06/10/31 01:41:27
>>234
URLリンク(lists.boost.org)
これこれ
236:デフォルトの名無しさん
06/10/31 03:07:04
やる気のない実装を見るとRejectされそうだけどな
237:デフォルトの名無しさん
06/10/31 12:11:48
URLリンク(lists.boost.org)
VC7.1でコンパイルとおらねえじゃねえかよ
同じとこでこけやがる
238:デフォルトの名無しさん
06/10/31 18:46:57
LinuxのGCCでワイド文字全般がうまく機能しないです。
gcc3.3.6
libstdc++3.3.6
boostでなんとかなりませんか?
wcout << L"てれれのレ";
[****@ **] (沈黙)
239:デフォルトの名無しさん
06/10/31 18:51:43
端末の文字コードが間違っているなんてこと無いよね?
240:デフォルトの名無しさん
06/10/31 19:18:04
ないです。
241:デフォルトの名無しさん
06/10/31 19:24:22
出力をパイプでod -tx1に流して16進で見ても、やはり
[****@ **]./a.out | od -tx1
0000000 (沈黙)
242:デフォルトの名無しさん
06/10/31 19:41:44
スレリンク(tech板:294-304番)
これと同じ問題?
243:デフォルトの名無しさん
06/10/31 19:52:16
gccのバージョン上げろ
244:デフォルトの名無しさん
06/10/31 20:25:51
つまり L をコンパイラがまともに処理してくれていない?
245:デフォルトの名無しさん
06/10/31 20:58:26
そうだよ。-Sでアセンブラ出力みてみ。
246:デフォルトの名無しさん
06/10/31 21:14:59
バージョンの問題なのか?
247:デフォルトの名無しさん
06/10/31 21:39:46
>>2.4.6
--input-charsetが3.4からだから、そうだと思うんだけど。
248:デフォルトの名無しさん
06/10/31 21:40:21
あかん、アンカーがorz
249:デフォルトの名無しさん
06/10/31 23:02:31
>>248 誰がうまいこと言えと
250:デフォルトの名無しさん
06/11/01 01:37:53
function<int (int)> hohe(int x)
{
return boost::lambda::_1 +x;
}
でxを延命させるうまい方法はありますか? 別途関数を作ってbindとか、
plus<int>()にbindあたりはナシで。
251:デフォルトの名無しさん
06/11/01 01:48:57
>>250
延命も何も、λ式に保持されるのはその時点でのxの値で、
xへの参照ではないから、xの寿命を気にする必要はない。
252:デフォルトの名無しさん
06/11/01 04:26:38
gcc3.4 gcc4.0.2で試したらワイド文字関係がすこぶる正常。
結局バージョンの問題か。
253:デフォルトの名無しさん
06/11/01 09:28:50
もう少し前は日本語のみのワイド文字対応が入っていたんだけど、
3.3→3.4辺りで国際化した。あなたの使ったのは狭間の具合い悪いバージョン。
254:デフォルトの名無しさん
06/11/01 10:49:17
GUIライブラリのboost取り込みってどうなった?
255:デフォルトの名無しさん
06/11/01 11:27:37
そんな激しくプラットフォーム依存な物を
標準ライブラリに入れようとしているのか。
もしかして curses みたいなものか?
256:デフォルトの名無しさん
06/11/01 11:55:13
boost mailing listで
さっきbug fixしてupした
とかいってるやつはcvsのバージョンのことなのかな
257:デフォルトの名無しさん
06/11/01 17:30:47
lexical_cast.hppを見てみたら、半年くらい前に見たときと
大幅に違ってるんだけど、何か変わったの?
258:デフォルトの名無しさん
06/11/01 21:59:04
カレントプロセスのカレントディレクトリを取得する方法
ってありますか?
GetCurrentDirectoryみたいなやつ。
259:デフォルトの名無しさん
06/11/01 22:09:37
>>255
お前の中でThreadやfilesystemは一体なんなの?
260:デフォルトの名無しさん
06/11/01 22:57:40
そんなには激しくないプラットフォーム依存な物
261:デフォルトの名無しさん
06/11/02 01:13:53
>>258 boost::filesystem::current_path()
262:デフォルトの名無しさん
06/11/02 01:30:36
それLinuxだと実行ファイルのパスじゃなくて
userのカレントディレクトリを返しちゃうん
だよね。
これLinuxの仕様くさいから仕方ないか。
263:デフォルトの名無しさん
06/11/02 01:35:20
>>262
どこから実行ファイルのパスの話が出てきたんだ?
264:デフォルトの名無しさん
06/11/02 01:37:59
>>262
こいつアホすぎww
265:デフォルトの名無しさん
06/11/02 11:06:53
>>262
Windowsも似たようなもの
>>258の意図は知らないがcurrent_pathはたいてい役に立たない
266:デフォルトの名無しさん
06/11/02 11:07:31
>>257
最適化
数字は自前でパースするようになった
267:デフォルトの名無しさん
06/11/02 11:33:40
他Cスレで聞いても誰も答えてくれなかった
Cで行列演算といえば
LAPCK
boost::numeric::ublas
あたりが定番だけど
統計計算でお勧めは?
今boostで審査中や過去にrejectされたものでもいいので誰か教えて
使いたい機能は
単純に共分散行列を計算
正規分布に関係したいろいろな計算
できれば
kai^2 test
t-test
とかちょっと高度なこともしたい。
268:デフォルトの名無しさん
06/11/02 12:49:28
>>266
でも未だに1e+10とかは扱えないんだなw
269:デフォルトの名無しさん
06/11/02 12:57:56
boost::serialization で NaN (+inf とか -inf とかも)を
シリアライズできないのは痛い。
270:デフォルトの名無しさん
06/11/02 14:18:37
boostのclass名が
ClassName
じゃなくて
class_name
になってるのが気持ち悪い
なんでこんな命名規則になった
271:デフォルトの名無しさん
06/11/02 14:28:12
C++の標準ライブラリと同様の命名規則を採用したから。
272:デフォルトの名無しさん
06/11/02 16:40:38
識別子をなんでもかんでも小文字にしたくなって困る
273:デフォルトの名無しさん
06/11/02 17:13:19
>>267
boostじゃないけど
liboctave
libRmath
libgsl
あたり
274:デフォルトの名無しさん
06/11/02 23:31:11
次期標準でも concept 名だけは大文字になりそうだな
275:デフォルトの名無しさん
06/11/02 23:32:09
>>273
thx
liboctave はmatlab使いには便利そう
libRmath
本当の統計屋さんはやっぱりRを使うのだろうか
R使ったことない
liggsl
こんなのあったんだね。
でも多項式演算関係以外は既存libとかぎりなく一緒
276:デフォルトの名無しさん
06/11/03 02:10:07
>>270
おまえさんは標準C++ライブラリも気持ち悪いって言うんだろうな。
実際そういう人が結構多いようだ。
277:デフォルトの名無しさん
06/11/03 03:05:14
Javaに毒されすぎ
278:デフォルトの名無しさん
06/11/03 03:20:37
このスレ的には C++ に毒されてる連中が多いから
Java のメソッド名ナニアレ気持ちわるーい、となるのが正しい
279:デフォルトの名無しさん
06/11/03 03:40:40
むしろHaskellやPythonなんだが
280:デフォルトの名無しさん
06/11/03 03:47:52
HaskellもPythonもClassNameだな。
281:デフォルトの名無しさん
06/11/03 03:50:44
すべて小文字な命名法はlispを思わせる。
282:デフォルトの名無しさん
06/11/03 04:31:57
lispはハイフン区切りで全部大文字(CLASS-NAME)だろ。
283:デフォルトの名無しさん
06/11/03 08:11:55
というか(強制した時以外)大文字小文字の区別がない。> Lispのシンボル
284:デフォルトの名無しさん
06/11/03 12:34:11
正確には「Common Lispは・・・」と言うべきだろう
285:デフォルトの名無しさん
06/11/05 03:31:58
boostって Subversionではアクセスできないの?
cvsのみ?
286:デフォルトの名無しさん
06/11/05 03:35:19
>>285
前から話は出てるんだけどねぇ。
次のリリースの後にしようとして、リリースが延び延びになってる気配。
ちゃんと ML 漁れば、他に理由があるのかもしれないけど。
287:デフォルトの名無しさん
06/11/05 19:38:50
lambda_functor<U>のアドレスってどうしたらえられますか。
288:287
06/11/05 19:40:40
たとえば
(_1+_2)のようなラムダがあった場合
このlambda_functorのアドレスが知りたいのです。
289:デフォルトの名無しさん
06/11/05 19:43:31
そんなものは存在しません
290:デフォルトの名無しさん
06/11/05 20:40:51
>>289
無理か。諦めます。レスありがとう。
291:デフォルトの名無しさん
06/11/05 21:10:34
md5やsha1を計算するライブラリありますか?
crcはあるようですが
292:デフォルトの名無しさん
06/11/05 21:26:13
md5はそのままソース引っこ抜いて使えるようになってた。
この手の参照透過性のある関数を
特にパラメタライズするメリットは感じないが。
293:デフォルトの名無しさん
06/11/05 21:28:38
MD5はRFCにあるソースはK&R式の関数宣言なんでC++としてコンパイルしようとすると失敗するはず。
294:デフォルトの名無しさん
06/11/05 21:28:43
>md5はそのままソース引っこ抜いて使えるようになってた。
どこ?
295:デフォルトの名無しさん
06/11/05 21:30:11
RFC
296:デフォルトの名無しさん
06/11/05 21:30:37
>>295
ありがとう
297:デフォルトの名無しさん
06/11/05 21:34:49
Boost には無いので
URLリンク(sourceforge.net)
とか
URLリンク(botan.randombit.net)
とか
URLリンク(opensource.adobe.com)
URLリンク(opensource.adobe.com)
あたりで
298:デフォルトの名無しさん
06/11/05 21:38:29
>>293
コンパイルはそのまま通ったと思う。
数年前のことなので記憶が不鮮明だが、GNUのbinutilsから引っこ抜いた気がする。
299:デフォルトの名無しさん
06/11/06 00:37:42
>>293
そんなの1分で直せるじゃん
300:デフォルトの名無しさん
06/11/06 14:32:48
まだ特定してないんだけど、spiritのどこかで
using namespace std; の記述があるみたいですね。
(std::coutが名前空間を指定せずに使えてしまった)
これってちょっと問題あるような…。
301:デフォルトの名無しさん
06/11/06 14:40:05
$ grep -FR "using namespace std;" .
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./core/primitives/impl/primitives.ipp: using namespace std;
./fusion/sequence/detail/manip.hpp: using namespace std;
./iterator/impl/file_iterator.ipp:using namespace std;
./phoenix/closures.hpp: using namespace std;
302:デフォルトの名無しさん
06/11/06 14:42:18
>>267
>>273
>>275
こんなのあったんだね
Boost.MathToolkit
URLリンク(www.johnmaddock.co.uk)
URLリンク(lists.boost.org)
303:デフォルトの名無しさん
06/11/06 15:26:41
>>300
>>301
>./iterator/impl/file_iterator.ipp
これがまずい.
他の使い方は関数内なので問題ないし,意図的というか必要な using directive.
304:デフォルトの名無しさん
06/11/06 15:30:51
boost mailing list に
新しいライブラリーをaccept するかのreviewが投稿されてるけど
ただのユーザーとしてのreviewを投稿してもいいのかな?
305:デフォルトの名無しさん
06/11/06 17:21:32
boostの中に
ClassNameって命名規則つかってるの1つもないのかな
例外なく
class_name
に修正されるのかな
306:デフォルトの名無しさん
06/11/06 17:25:32
大文字って、そこだけ目立つから、見にくくなる。
あと長すぎるシンボルも関数の引数のところで行が折り返して見にくくなる。
boostってほどほどで良い感じ。
307:デフォルトの名無しさん
06/11/06 17:34:22
ublas があるのに
boost.glasとかわけわかんね
URLリンク(glas.sourceforge.net)
308:デフォルトの名無しさん
06/11/06 20:27:15
>>305
Boost にはガイドラインがあって、そこでコーディングルールはある程度決まってる。
URLリンク(boost.org)
・クラス名や、メソッド名は class_name や method_name みたいにすること。
・テンプレートパラメータは TemplateParameter みたいにすること。
・分かりやすい名前にすること。
・マクロは MACRO_NAME みたいにすること。
309:デフォルトの名無しさん
06/11/06 20:29:55
間違えた。
×マクロは MACRO_NAME みたいにすること。
○マクロは、すべて大文字で、BOOST_ からはじめること。
だな。
310:デフォルトの名無しさん
06/11/06 22:27:44
>>304
投稿するのは自由だろう。「ただのユーザーとして」というのはちょっと引っかかるが。
不満を述べるだけじゃなくて、代案か、代案が出せないと考える理由を出すべきだろうね。
まぁ筋が通ってなければスルーされるだけ。何か考えがあるなら投稿しとけばいいと思うよ。
311:デフォルトの名無しさん
06/11/07 08:21:16
「ただのユーザーとして」
っていう表現にどんな意味がこもっているかにもよるよね。
何となく
「恥かきそうだったり辛そうだったりしたら、いつでも綺麗にバッくれて
俺の人生においてすべてを"なかったこと"にできる道を確保したまま」
という意味な気がするんで、同じく引っかかる。
312:デフォルトの名無しさん
06/11/07 08:58:36
>>311 は一生引っかかっていればいいと思うよ。
何かに。
313:デフォルトの名無しさん
06/11/07 09:29:40
ドンピシャなら絶対噛み付いてくるだろうなと期待はしていたけどw
314:デフォルトの名無しさん
06/11/07 09:31:05
>>312に言葉の重みを感じてちょっとワロタ
315:デフォルトの名無しさん
06/11/07 10:55:34
まぁよっぽど悔しかったんだろ。
316:デフォルトの名無しさん
06/11/07 19:41:42
>>226
GIL has been accepted as a boost library.
URLリンク(lists.boost.org)
317:デフォルトの名無しさん
06/11/07 19:51:41
>>316
通ったのか!
318:デフォルトの名無しさん
06/11/07 22:12:22
>>300 の問題は Spirit 1.84 だと修正されてた.
319:デフォルトの名無しさん
06/11/08 01:18:37
>>316
accepted
なのはいいけど肝心の GILのホームページが見れない
320:デフォルトの名無しさん
06/11/08 10:03:45
>>319
今は見れるようになってるね
321:gil
06/11/08 11:30:18
acceptの感動で気絶してました。
322:デフォルトの名無しさん
06/11/08 12:06:06
>>321 そのわりには Latest news が更新されていないじゃないか。
URLリンク(opensource.adobe.com)
323:デフォルトの名無しさん
06/11/08 12:29:56
gil頻繁に更新されてるみたいだけど
どこが変わったか書いてないんだよね
324:デフォルトの名無しさん
06/11/09 01:40:50
GILをVS2003で早速使ってるけど
fatal error C1204: コンパイラの制限 : 内部構造がオーバーフローしました。
とかおきるのはVS2005に乗り換えればなんとかなるのかねえ
325:デフォルトの名無しさん
06/11/09 10:16:50
で、1.34 はいつリリースなのかね?
326:デフォルトの名無しさん
06/11/09 10:32:21
今店出ました
327:デフォルトの名無しさん
06/11/09 11:56:38
延びないうちによろしく。
328:デフォルトの名無しさん
06/11/09 14:18:57
boost::filesystem::pathのコンストラクタではパスを表す
文字列を与えますが、windowでドライブ名を含めたパスを
扱うにはどうすればよいでしょうか?
単純に
path("C:\hoge");
とすると落ちてしまいます。
329:デフォルトの名無しさん
06/11/09 14:28:15
\\
330:デフォルトの名無しさん
06/11/09 14:51:34
path::default_name_check( &native );
331:デフォルトの名無しさん
06/11/09 16:09:25
name_check関数を設定すればえがったんですね。
ありがとうごぜーますた。
332:デフォルトの名無しさん
06/11/09 16:34:13
URLリンク(www.boost.org)
path( const char * src, name_check checker )
こういうコンストラクタがあるので、
コンストラクトのときだけ指定してやればいいんだぜ?
path p( "c:", native );
p /= "/foo";
assert( p.string() == "c:/foo" );
333:デフォルトの名無しさん
06/11/09 16:36:30
おっと、名前空間は適当につけてくれ?
334:デフォルトの名無しさん
06/11/09 19:27:37
それは見て分かっただよ。
でも、あんがとさん。
335:デフォルトの名無しさん
06/11/10 16:09:31
boost::graph
と
boost::numerics::ublas
を駆使した
graphical_modeling ( とりあえず partilce filterだけインプリメント)
ってパッケージ作ったらboostにアクセプトされると思うのだけど
どう思う?
336:デフォルトの名無しさん
06/11/10 16:31:12
まず形になってから言えばいいんでないかな?
337:335
06/11/10 16:41:43
>>336
死んでしまったらしいプロジェクトの再活性のために
メンバー募集してるような感じなので
URLリンク(sourceforge.net)
やる人が増えたらいいなって、それだけです。
338:デフォルトの名無しさん
06/11/15 14:23:40
>>324
SP1で解決されたと書いてるがどうだろう
339:デフォルトの名無しさん
06/11/16 22:12:55
boostにMFCのTRACEマクロと同等のものありませんか?
340:デフォルトの名無しさん
06/11/17 10:21:48
>>89
>>90
すっごい亀なんだけど,VC++8 と STLport 5.1 と
Boost 1.33.1 は完全には共存できないことが分かった.
URLリンク(d.hatena.ne.jp)
ここに書かれている方法を使えば,wave 以外のライブラリは
構築できる.でも,wave だけはどうやっても無理.
なぜかというと,spirit の tree_node<T> の定義が問題なんだ.
tree_node<T> が中で vector<tree_node<T> > を使っていて,
__has_trivial_constructor の引数にできないと怒られる.
ということは,spirit も使えないことになるわけだ.
VC++8 の人はおとなしく STLport 5.1 を諦めるか,
もしくは STLport の中のコンセプトチェックを外すか
しないと駄目だと思う.
341:デフォルトの名無しさん
06/11/17 16:35:10
VS2005なんですがコンパイルに通りません
ublas::prod<matrix, vector>なはずなのに
ublas::prod<matrix, matrix>と勝手に解釈されます
std::vector< boost::numeric::ublas::vector<float > > vector_list;
std::transform(vector_list.begin(),vector_list.end()
,vector_list.begin()
,
std::bind1st(
std::ptr_fun(
boost::numeric::ublas::prod<
boost::numeric::ublas::matrix< float > ,
boost::numeric::ublas::vector< float >
>)
,covariance.covariance));
342:デフォルトの名無しさん
06/11/20 21:05:43
multi_arrayってコンストラクタ以外で要素数を変更できないのですか?
343:デフォルトの名無しさん
06/11/21 02:34:42
C++相談室 part54 から飛び火。
スレリンク(tech板:611-622番)
boost の導入が却下される理由を教えてください。
344:デフォルトの名無しさん
06/11/21 02:50:48
>>343
オブジェクトコードにスタンプが入っちゃうから。
345:デフォルトの名無しさん
06/11/21 09:31:14
まずSTLの導入が却下されてるからな
346:デフォルトの名無しさん
06/11/21 10:55:33
それって事実上のC++ダメ宣言?
347:デフォルトの名無しさん
06/11/21 12:58:06
>>343
VS2003でSP1あてないとコンパイル通らないコードがたまにあるから
348:デフォルトの名無しさん
06/11/21 13:02:39
>>343
コンパイルが遅いからとかw
いくらでも理由は考えられるし、わざわざここへチクりに来るような話題とも思えない。
349:デフォルトの名無しさん
06/11/21 16:56:47
URLリンク(www.boost-consulting.com)
boostって儲かるのかな
boostのreviewも裏でなにかありそうなかんじだ
GILとvigraの争いもなんか違和感がなくもなかった
350:デフォルトの名無しさん
06/11/22 10:17:52
STOP! 探偵ごっこ
351:デフォルトの名無しさん
06/11/22 18:04:13
boost::tokenizer で切り分けた個数を得る方法はありますか?
(イテレータでループしてもとめるのではなくて。。)
352:デフォルトの名無しさん
06/11/22 18:47:33
>>351
tokenizer はイテレータを移動するたびに区切りを探す仕様だから無理。
353:デフォルトの名無しさん
06/11/22 18:52:00
個数カウント関係は
boost::accumulators
の人に要望したら実装してくれるかも
354:デフォルトの名無しさん
06/11/22 19:08:11
>>350
探偵ごっこじゃなくて
vigraからGILに乗り換えるかで悩んでるんだよ
boostのreviewとやらが信用できるかどうかが、大きなファクター
なんか怪しいって思ってるやつが結構いるんだったら
boostのreviewを無視してvigraを使い続ける
355:デフォルトの名無しさん
06/11/22 23:52:45
vagina
356:デフォルトの名無しさん
06/11/23 00:07:40
viagra
357:デフォルトの名無しさん
06/11/23 01:27:31
Caverta で十分。
358:デフォルトの名無しさん
06/11/24 08:52:34
下の様なエラーが出て困ってます。リビルドすればコンパイルは通る様になるのですが
毎回リビルドするのは大変なので、どうにか解決する方法ってないでしょうか?
c:\boost\boost\regex\v4\perl_matcher_common.hpp(734) : fatal error C1001: 内部コンパイラ エラー
(コンパイラ ファイル 'msc1.cpp', 行番号 1794)
Visual C++ のサポート情報 コマンドを選択してください
ヘルプ メニュー、 またはサポート情報のヘルプ ファイルを参照してください
コマンド ラインの警告 D4028 : 簡易リビルド時のエラ-です、通常のビルドに戻します
環境:
VC++6.0 SP6
Boost 1.33.1
359:デフォルトの名無しさん
06/11/24 12:37:19
VC6は偽C++だからなぁ・・・
360:デフォルトの名無しさん
06/11/24 13:19:08
>>359
6.0じゃもう古過ぎてダメですか?
361:デフォルトの名無しさん
06/11/24 14:02:04
C++じゃないしな
VC8EE使った方がいいだろ
362:デフォルトの名無しさん
06/11/25 00:57:13
vc8でコンパイル通らないのと組み合わせてる場合はどうしたらいいんだろう
コンパイル通らないコードはdllにして読むことにするとかできるのか?
363:デフォルトの名無しさん
06/11/25 01:32:12
VC8でコンパイル通らない時点でまともなC++じゃない可能性が高いわけだが
DLLなどの方法で分離することはもちろん可能。(MSVCRTの衝突に注意)
364:デフォルトの名無しさん
06/11/26 16:48:43
あんまり関係ないことかも知れないけど、uBLASってなんて読んだらいいの?
うぶらす?マイクロブラス?
365:デフォルトの名無しさん
06/11/26 18:31:11
あっぷれカス
366:デフォルトの名無しさん
06/11/26 20:01:25
>>364
俺は発音しなければならない状況に立たされたことがないので不明
367:デフォルトの名無しさん
06/11/27 09:38:25
誰か俺にSFINAEの発音プリーズ
368:デフォルトの名無しさん
06/11/27 10:00:39
自分としては「えすふぁいなえ」などと変な読みをしてるけど
他人と口頭でSFINAEについて話したことがないのでどう言っていいかわからん
369:デフォルトの名無しさん
06/11/27 10:20:16
すふぃなぇ
370:デフォルトの名無しさん
06/11/27 10:46:18
エス 吹く アナル
371:デフォルトの名無しさん
06/11/27 11:34:46
ボーストが標準でついているコンパイラはありませんか??
372:デフォルトの名無しさん
06/11/27 12:12:46
>>365
URLリンク(uprecus.jp.land.to)
373:デフォルトの名無しさん
06/11/27 12:13:51
,.-─ ─-、─-、
, イ)ィ -─ ─- 、ミヽ
ノ /,.-‐'"´ `ヾj ii / Λ
,イ// ^ヽj(二フ'"´ ̄`ヾ、ノイ{
ノ/,/ミ三ニヲ´ ゙、ノi!
{V /ミ三二,イ , -─ Yソ
レ'/三二彡イ .:ィこラ ;:こラ j{
V;;;::. ;ヲヾ!V ー '′ i ー ' ソ
Vニミ( 入 、 r j ,′
ヾミ、`ゝ ` ー--‐'ゞニ<‐-イ
ヽ ヽ -''ニニ‐ /
| `、 ⌒ ,/
| > ---- r‐'´
ヽ_ |
ヽ _ _ 」
ウプレカス [ uBLAS ]
( 西暦一世紀前半 〜 没年不明 )
374:デフォルトの名無しさん
06/11/28 02:00:21
ublasのsolveで使われるlower_tagやupper_tagはどのような意味があるのですか?
ドキュメントからは見つけられませんでした。
375:デフォルトの名無しさん
06/11/28 02:16:43
>Solves a system of linear equations with triangular form, i.e. A is triangular.
とあったので、Aは三角行列でなければならず、そのタイプを示すのがtagでしょうか?
もしそうなら結局LU分解しなきゃダメなのであまり使えないですねこれ・・・
376:デフォルトの名無しさん
06/11/28 02:34:33
atlas::cholesky_factor
のように三角行列しかうけつけない関数がある
普通の行列の上半分つかってを三角行列にするときに使うのが
upper_tag
377:デフォルトの名無しさん
06/11/28 06:42:02
>>364
ユーブラスじゃね?
378:デフォルトの名無しさん
06/11/28 12:51:52
>>377
>>373
379:デフォルトの名無しさん
06/11/29 14:39:30
Geometry Library ってひょっとして複数の候補があるのか?
URLリンク(boost-consulting.com)
いったいどれを使ったらいいんだ
380:デフォルトの名無しさん
06/11/29 19:46:16
boost1.33.1をVCEEで使おうと思ってインストールしようとしたのですが失敗してしまいます
bjam "-sTOOLS=vc8_0" install とすると
...skipped <@boost!include!boost-1_33_1!boost!wave!util>unput_queue_iterator.hpp
for lack of <directory-grist>C:\Boost\include\boost-1_33_1\boost\wave\util...
のようなメッセージが大量に出て最後に
...failed updating 2 targets...
...skipped 4805 targets...
と表示されて終了してしまいます
どうしてでしょうか?どなたか解決策を教えてくださいお願いします
381:デフォルトの名無しさん
06/11/29 23:29:29
sdkへのパス通して↓でうちはいけた(いま使ったことのある範囲ではだけど
>bjam -sTOOLS=vc-8_0 --prefix="C:\Program Files\Microsoft Visual Studio 8\VC" install
エラーもエラーで長いから憂鬱だよな
382:デフォルトの名無しさん
06/12/01 22:51:51
>>381ありがとうございます
sdkへのパスとは
C:\Program Files\Microsoft Visual Studio 8\SDK
のことでしょうか?
パスを通すというのは、システム環境変数のpathに追加するということですよね?
色々追加してやってみましたが、結果は変わりませんでした
383:デフォルトの名無しさん
06/12/01 23:15:17
URLリンク(www.boost.org)
vsvars32.batを編集する必要がある
384:デフォルトの名無しさん
06/12/02 00:48:42
む、あいまいかつ適当な書き方して申し訳なかった
そのときのメモ見たら
set INCLUDE=C:\Program Files\Microsoft Platform SDK\Include
してC:\Program Files\Microsoft Visual Studio 8\VC\vcvarsall.bat走らせて
bjam -sTOOLS=vc-8_0 --prefix="C:\Program Files\Microsoft Visual Studio 8\VC" install
したって書いてあった。
set LIB=C:\Program Files\Microsoft Platform SDK\Libはvcvarsallがやってくれたっぽいが
標準でやってるのか自分でbat編集したのかは覚えてない
まあ>>383の通りです
385:デフォルトの名無しさん
06/12/03 00:10:04
>>383-384ありがとうございます
set INCLUDE=C:\Program Files\Microsoft Platform SDK\Include
set LIB=C:\Program Files\Microsoft Platform SDK\Lib
bjam -sTOOLS=vc-8_0 --prefix="C:\Program Files\Microsoft Visual Studio 8\VC" install
とやってみましたが、相変わらず大量のエラーメッセージが出てしまいます
383のリンクを見てみましたが、PlatformSDKが必要ということとvsvars32.batを編集しないといけないということは分かったのですが
英語が苦手なので具体的にどこをどう編集しないといけないのか分かりませんでした
本当にすみません
VCEEではなかなか出来ないのでBCB6.0でやってみようと思い、
>1にあるLet's Boostを参考にして↓のようにやりましたが、また同じようなエラーが出てしまいました
C:\lib\boost_1_33_1>set PATH="C:\Program Files\Borland\CBuilder6\Bin";%PATH%
C:\lib\boost_1_33_1>bjam -sTOOLS=borland --prefix="C:\Program Files\Borland\CBuilder6" install
何でやってもダメということは何か基本的な設定が出来てないのでしょうか?
386:デフォルトの名無しさん
06/12/03 01:50:50
vcvarsall.batの
@set INCLUDE=
@set LIB=
の部分に;で区切って追加する
387:358
06/12/03 07:12:58
VC++6.0、IDEも軽くていいんだけどなぁ。
MFCのランタイムも普及してて、Win98以降のOSなら何でも動くし。
でも、そろそろ新しいバージョンに移行した方がいいのかもね…
考えてみれば、8年前の開発環境なんだよね… >6.0
388:デフォルトの名無しさん
06/12/03 07:14:27
テンプレートの対応もアレだしね。6.0
389:デフォルトの名無しさん
06/12/03 18:33:22
phoenix::bindがspirit::parseのオーバーロードを解決してくれない・・・
lambda::bindならいけるのに・・・
390:デフォルトの名無しさん
06/12/03 22:17:45
>>386ありがとうございます
vcvarsall.batには@set INCLUDEと@set LIBがありませんでした
vsvars32.batにはあったのでそれを↓のように編集しました
@set INCLUDE=C:\Program Files\Microsoft Visual Studio 8\VC\INCLUDE;%C:\Program Files\Microsoft Platform SDK\Include;%INCLUDE
@set LIB=C:\Program Files\Microsoft Visual Studio 8\VC\LIB;C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\lib;C:\Program Files\Microsoft Platform SDK\Lib;%LIB%
それから↓のようにコマンドを打ち込んでみましたが、やはり>>380と同じようなエラーが出ました
C:\lib\boost_1_33_1>"C:\Program Files\Microsoft Visual Studio 8\VC\vcvarsall.bat"
Setting environment for using Microsoft Visual Studio 2005 x86 tools.
C:\lib\boost_1_33_1>bjam -sTOOLS=vc-8_0 --prefix="C:\Program Files\Microsoft Visual Studio 8\VC" install
VCEEだけでなくBCB6.0でもVC6.0でも失敗しました
どうやら私には無理なようです
regexだけ↓のコマンドでインストール出来たのでもうこれで一旦諦めます(これはVCEEでもBCB6.0でも出来ました)
C:\lib\boost_1_33_1\libs\regex\build>"C:\Program Files\Microsoft Visual Studio 8\VC\vcvarsall.bat"
Setting environment for using Microsoft Visual Studio 2005 x86 tools.
C:\lib\boost_1_33_1\libs\regex\build>nmake -fvc8
C:\lib\boost_1_33_1\libs\regex\build>nmake -fvc8 install
今度もう少しコマンドプロンプトやBoostの基本を勉強して再挑戦してみます
スレ汚ししてすみませんでした
それから答えてくれた皆さんありがとうございました
391:デフォルトの名無しさん
06/12/03 22:32:02
自分は@setにboostのパスも通してるな
必須なのかは忘れた
よくがんばった。もうこれでいいじゃない
URLリンク(www.boost-consulting.com)
392:デフォルトの名無しさん
06/12/04 15:52:07
#include <boost/test/unit_test.hpp>
void test() {}
boost::unit_test::test_suite* init_unit_test_suite(int, char*[])
{
boost::unit_test::test_suite* suite = BOOST_TEST_SUITE("Test suite");
suite->add(BOOST_TEST_CASE(&test));
return suite;
}
上記のコードをgcc (GCC) 3.2.2 20030222 (Red Hat Linux 3.2.2-5)で
g++ a.cpp -lboost_unit_test_framework-gcc-d
によりコンパイルしたところ、
/usr/lib/gcc-lib/i386-redhat-linux/3.2.2/../../../crt1.o(.text+0x18): In function `_start':
../sysdeps/i386/elf/start.S:77: undefined reference to `main'
collect2: ld はステータス 1 で終了しました
とリンクエラーになってしまいます。
(MS VC++ 8とgcc 3.4.4(cygming special)では正常にコンパイル&リンク&実行出来ました。)
-lboost_unit_test_framework-gccにしても、また g++ と a.cpp の間にこれを書いても同様に
リンクエラーになってしまいます。
(g++ a.cpp libboost_unit_test_framework-gcc-d.a
とすると正常にリンク、実行出来ます)
これはgccもしくはboost側の問題でしょうか?
それともコンパイラオプションが何か足りないのでしょうか?
393:デフォルトの名無しさん
06/12/06 18:33:41
URLリンク(www.kmonos.net)
これだけでは、boost.testの便利さが今ひとつ理解できない
394:デフォルトの名無しさん
06/12/06 19:31:20
CPPUNITでいいんじゃね
395:デフォルトの名無しさん
06/12/06 21:51:02
bjamでいろんなコンパイラ上で一気にテストできる
問題はbjamの使い方がよく分からないこと
396:デフォルトの名無しさん
06/12/08 15:24:39
scoped_arrayはvectorと違ってソートできない?
397:デフォルトの名無しさん
06/12/08 15:47:25
>>396
なんで?
398:デフォルトの名無しさん
06/12/08 16:40:54
begin(),end()が無いから
399:デフォルトの名無しさん
06/12/08 16:49:42
ポインタ渡せばいいじゃん。
ランダムアクセスイテレータの用件満たしてるよ。
400:デフォルトの名無しさん
06/12/08 17:02:05
了解
ありがとう
401:デフォルトの名無しさん
06/12/08 17:32:49
math.Geometryの下がカオスで試そうという気自体おきない
しかしGeometry関係の処理はしたい。
boost以外を探すべきか
402:デフォルトの名無しさん
06/12/08 20:01:44
>>398
つmake_iterator_range
403:デフォルトの名無しさん
06/12/10 21:09:05
επιστημη氏ってboostに関して何か書いてたっけ?
MFCからSTLに関しては、いろんな所に書き散らかしてるけど
404:デフォルトの名無しさん
06/12/10 21:43:46
>>403
なんの脈絡もなく突然どうした? スレを間違えたのか?
とりあえず、例の翻訳プロジェクトには参加してるみたいだけど。
URLリンク(sourceforge.jp)
405:デフォルトの名無しさん
06/12/11 07:05:53
>いろんな所に書き散らかしてるけど
を見て、さらにスレ違いな質問を思いついた。
boost使いってPC系ではどんな雑誌読んでる?情報収集はネットのみ?
406:デフォルトの名無しさん
06/12/11 07:18:35
「boost使い」と名乗っていいレベルかどうか自信ないけど、
俺は雑誌は一切読まない。
いや、別に「絶対読まねえぞ」みたいなこだわりがあるわけじゃないけど。
407:デフォルトの名無しさん
06/12/11 10:41:12
最近はPC系というかプログラミング系の雑誌自体あんま見かけないしな
boost devel や c++.moderated つまみ食いしてた方がよほど有益
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5123日前に更新/175 KB
担当:undef