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


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

Boostを語れゴラァ part3



1 名前:デフォルトの名無しさん [2006/09/23(土) 15:00:11 ]
語って.はぁと part boost::mpl::int_<3> 

前スレ
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/ 

445 名前:デフォルトの名無しさん mailto:sage [2006/12/15(金) 23:53:02 ]
VC6は2038年問題とかだけでも捨てるべきだろ。
少なくとも業務で使ってるってのならその会社は潰れてしかるべき。
ぜひ潰れて欲しい。

446 名前:デフォルトの名無しさん mailto:sage [2006/12/16(土) 01:39:05 ]
Cとしてしか使わないならVC6最高じゃん

447 名前:デフォルトの名無しさん mailto:sage [2006/12/16(土) 01:49:43 ]
>>466
同感!

最近 STL 使おうって思ってやっと 2005 に切り替えました!


448 名前:デフォルトの名無しさん mailto:sage [2006/12/16(土) 02:23:20 ]
激しくスレ違いで申し訳ないが…

8だとテンプレートをネスト出来たりするかね?
ならば今すぐ買いに行くさ。

449 名前:デフォルトの名無しさん mailto:sage [2006/12/16(土) 02:34:38 ]
するする。今すぐ買いに行け。

450 名前:デフォルトの名無しさん mailto:sage [2006/12/16(土) 02:36:43 ]
これか?
template < typename T >
struct Foo
{
template < typename P >
static void Bar() ;
} ;

Foo<int>::Bar<int>() ;


あるいはこれか?
template < typename T,
template<typename, typename>
class Container >
class Foo
{
Container< T, std::allocator<T> > cont ;
} ;

Foo< int, std::vector > FooVec ;

どちらもできる……が、後者は、なぜかテンプレートテンプレートパラメータのデフォルト引数が使えない。

//エラー
template< template <typename, typename = std::allocator<int> > class Container >
class Foo
{ Container<int> cont ; } ;

451 名前:デフォルトの名無しさん mailto:sage [2006/12/16(土) 02:39:46 ]
まじかよ…
部分特殊化だけかと思ってた…

今すぐ買いに行くわ
確かファミマにあったはず。アカデミックだけど。

452 名前:デフォルトの名無しさん [2006/12/16(土) 02:44:32 ]
あ〜、後者ですわ。
デフォルト指定は無理なのかぁ…、
まぁいい機会だし買いに行きま。

453 名前:デフォルトの名無しさん mailto:sage [2006/12/16(土) 02:44:41 ]
>テンプレートテンプレートパラメータのデフォルト引数
そんな言語機能があったなんて!
いったいなんのためにあるんだろう。



454 名前:デフォルトの名無しさん mailto:sage [2006/12/16(土) 03:29:27 ]
メタ関数として使えそうなんで用意したけど実際にはいまいち使えなかった、
という感じか?>テンプレートテンプレートパラメータ

455 名前:デフォルトの名無しさん mailto:sage [2006/12/16(土) 03:47:12 ]
いや、テンプレートテンプレートパラメタには意味があると思うんだが、
テンプレートテンプレートパラメタ「の」デフォルト引数ってなかなか出てこない発想じゃないだろうか。
ふつうの関数だと
void f(int (*g)(int = 7)){}
不正みたいだし。

456 名前:デフォルトの名無しさん mailto:sage [2006/12/16(土) 03:50:58 ]
普通に使いますから。
テンプレートクラスでデフォルト引数が使えるのは(allocatorなど)当たり前のことだし、
テンプレートの引数に、テンプレートクラス使えないのは不便で仕方がない。


457 名前:デフォルトの名無しさん mailto:sage [2006/12/16(土) 06:04:31 ]
そこで、boost.preprocessorですよ。

458 名前:デフォルトの名無しさん mailto:sage [2006/12/16(土) 06:06:57 ]
え、VC8でも
hoge<hage<int>>;
みたいのはできないの?

デフォルト引数を定義しなければ使えるってこと?

459 名前:デフォルトの名無しさん mailto:sage [2006/12/16(土) 06:15:31 ]
>>458
シンタックスエラー!

460 名前:デフォルトの名無しさん mailto:sage [2006/12/16(土) 06:40:06 ]
uho!

461 名前:デフォルトの名無しさん mailto:sage [2006/12/16(土) 06:46:08 ]
>>457
preprocessorで何ができると?

462 名前:デフォルトの名無しさん mailto:sage [2006/12/16(土) 12:19:11 ]
Tはテンプレート引数でコンテナ型です。

typedef typename boost::mpl::if_<boost::is_const<T>, typename T::const_iterator, typename T::iterator>::type Hoge;
typedef typename boost::mpl::if_<boost::is_const<T>, typename T::const_pointer, typename T::pointer>::type Hage;
typedef typename boost::mpl::if_<boost::is_const<T>, typename T::const_reference, typename T::reference>::type Debu;

こういうことをやりたいんですが、もっとシンプルに記述できる方法はないでしょうか?

463 名前:デフォルトの名無しさん mailto:sage [2006/12/17(日) 06:55:37 ]
プリプロセッサを使ってもシンプルにはならないだろうし、読みにくくなるだけかと。
そもそも何でそういうことがしたいのか分からない。
渡されたコンテナがconstでなければ、書き換える。
constであれば書き換えないという、奇妙な関数でも書きたいのだろうか。



464 名前:デフォルトの名無しさん mailto:sage [2006/12/17(日) 17:28:40 ]
>>462
boost::range_result_iterator< std::vector< int > >::type         // -> std::vector< int >::iterator
boost::range_result_iterator< const std::vector< int > >::type // -> std::vector< int >::const_iterator

あとは上のように獲得した iterator 型に boost::iterator_[reference|pointer] を適用

465 名前:デフォルトの名無しさん mailto:sage [2006/12/17(日) 23:17:11 ]
>>464
うわぁ、Boost.Rangeチョー便利ナリ・・・
boost::sizeとかあるし。sizeof(a) / sizeof(a[0])とかしてたのが馬鹿みたいだ。
いいものを教えてもらった、ありがとう。

466 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 08:19:06 ]
templateもろくに通らないからVC6から2005に切り替えたよ

467 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 15:00:59 ]
今度はワイド文字ストリームがろくに使えないVC 2005。

468 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 16:09:31 ]
VC 2005 SP1で直る・・・はず・・・だといいな・・・

469 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 18:20:48 ]
その SP1 では graph library が使えないということらしいが

470 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 18:23:55 ]
>>468
直ってないような気がする・・・

471 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 18:28:28 ]
いや、気がするんじゃなくて間違いなく直ってないや。

472 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 18:40:36 ]
SP1出たんだな

473 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 18:46:01 ]
STLPort使うとなぜかは知らないがlocale::globalの後でもimbueが効くようだ。



474 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 21:57:24 ]
なあ、boostいじってるC++狂の連中はWebアプリケーションはなにで
書いてるんだ?
俺、JavaもPerlもやる気しねーよ。もっとC++でWebアプリ書くフレーム
ワークとか環境とか色々あってもいいのになあとか思うんだが。

475 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 21:59:52 ]
boostいじってるC++狂の連中はWebアプリケーションなんてかったるいものは
書かないんじゃないかな

476 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 22:00:27 ]
Perlは確かに使う気しないがJavaなら別にいい

477 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 22:12:09 ]
スレ違いだと思うのでURLだけ
ws.apache.org/axis/ja/cpp/lininstall-guide.html
www.cs.fsu.edu/~engelen/soap.html
www.xlsoft.com/jp/products/roguewave/sourcepro/index.html

478 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 22:18:51 ]
boost::CppOnRailsができるのを待つか

479 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 00:42:34 ]
>>474
なんか「柴犬」とか言うtomcatもどきをC++で実装してテストしてるスレがあった希ガス


480 名前:デフォルトの名無しさん [2006/12/19(火) 07:44:46 ]
sscanfみたいなのを
正規表現で指定できる関数はあるのでしょうか?



481 名前:450 mailto:sage [2006/12/19(火) 08:04:30 ]
SP1いれたら、テンプレートテンプレートパラメータのデフォルト引数が使えるようになっていた。

482 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 14:13:59 ]
boost MLに何度か投稿していたら
software関係conferenceの Invitation to submit a paper
(おそらくSPAMの一種だと思う)がくるようになった。

同種のメールは、自分の専門分野の関連領域でもくるのだが
( inviteされるような仕事してねえのに invite ってなんだよ)

software関連のは本当に怪しいのかを見分ける手段がない
なにか見分ける方法ないものか

483 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 19:52:06 ]
すみません、質問させてください
基本型あるいはユーザ定義型の配列の要素数を返す関数を作ろうとしてるんですが
arrayがユーザ定義型の配列であった場合でも
/* @ */の処理がコンパイルされるためエラーになってしまいます

template <typename T> void count(T array[]){
if(boost::is_pod<T>::value){/* @ */}
else{/* A */}}

WEBで調べているとboost::enable_ifで解決できそうな予感がしたのですが
自分には次の例がよく理解できません(特に::type*=0の部分)
これはどういった理屈で動いているんでしょうか

template<typename T> void copy_n( const T* from, int n, T* to,
typename enable_if< is_pod<T> >::type* =0 ){/* 省略 */}



484 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 20:09:40 ]
>>483
enable_ifやdisable_ifは、関数のオーバーロード解決のルールをトリッキーに使っている。

やりたいことを実現する方法はいくつかある。
たとえばこんな方法。

//false以外、すなわちtrueの場合に呼ばれる
template < bool isPod >
struct Count_impl
{ static void do() {/* 1 */} } ;

//特殊化、falseの時に呼ばれる
template < >
struct Count_impl<false>
{ static void do() {/* 2 */} } ;

template < typename T >
void count(T array[])
{
 Count_impl<boost::is_pod<T>::value>::do() ;
}

485 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 20:11:15 ]
>>483
enable_if<is_pod<T> >
には、TがPODならtypeメンバがあり、そうでなければtypeメンバがない。
したがって、TがPODでないとき、typename enable_if<is_pod<T> >::typeは
不正な型であり、SFINAE規則によってこの定義が多重定義の考慮から外される。
結果として、TがPODであるときのみ考慮される定義ができたわけだ。
typename enable_if<is_pod<T> >::typeは、このコンパイル時選択の機構のためだけに
使われているので、インタフェースに影響を与えないようにデフォルト値付きの引数になっている。
ポインタを取っているのは簡潔に0で初期化できるようにだろう。

486 名前:483 mailto:sage [2006/12/19(火) 21:31:23 ]
>>484,485
レス感謝です
おかげさまで理解できました

>>484
こういう風にすればenable_ifなしでいけるんですね
なんとかそのプログラム理解はできても
自分で書けるようになるまでが大変だ・・
とりあえずこれを参考に頑張ってみます

>>485
enable_if< is_pod<T> >::type* =0
ええと、この式の場合だと
組み込み型の場合はtypeメンバが存在するわけですよね
そして組み込み型でない場合はtypeがないから定義自体されない
それだと* =0はなくても大丈夫なんじゃ?と思ったけど
この引数はコンパイル時にifの役割を果たせばよいから省略可能にしたい
省略可能にするには=とデフォルト引数が必要で
typeをtype*にすればどんな場合でも0が代入できる
うーむ、よく考えられてますね

487 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 22:46:08 ]
個人的には返り値型に使うほうが好き>enable_if

488 名前:デフォルトの名無しさん mailto:sage [2006/12/20(水) 01:12:34 ]
>>482
自分で「おそらくSPAMの一種だと思う」なら、ちゃんと見分けられてるじゃないか。

489 名前:デフォルトの名無しさん mailto:sage [2006/12/20(水) 03:58:16 ]
>>487
コンストラクタだとデフォルト引数として仕掛けるしかないけれどね

逆に引数の数が固定されていて余計なデフォルト引数が仕掛けられない
演算子関数定義だと戻り値型一択になるね

490 名前:デフォルトの名無しさん mailto:sage [2006/12/20(水) 20:21:16 ]
そもそも483が作ろうとしていると言う配列の要素数を返す関数は、
基本型かユーザ定義型かで分けて一体何をするのか気になる。

配列の要素数と言えばそもそもboost::size()で済むような話ではないのか?

491 名前:デフォルトの名無しさん mailto:sage [2006/12/20(水) 20:32:25 ]
>>490
番兵を思いついた。
podな型に対しては、ある値を決めておき、
俺様クラスについては、専用のフラグでも用意しているとか。

492 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 16:05:56 ]
boost開発者向けMLに、自分用に作った
プログラム(boostの既存libの部品の追加してるだけだけど)、
死蔵するのもったいないから
ときどき投稿してたんだけど、
最近、無視されてるっぽい。

493 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 17:41:27 ]
boost使いはVS2005にSP1はあてるのかい?



494 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 17:56:40 ]
当たり前だ

495 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 21:36:36 ]
>>492
何か不満か? ML に晒したんなら勝手に使ってる奴もいるだろう。
使った人が必ずレスポンスを返すわけでもなし。
死蔵にはならずに済んだんだからいいだろ。

496 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 22:52:25 ]
boost.cppll.jp 落ちてる?

497 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 23:29:55 ]
ぽいね。俺も繋げない

498 名前:デフォルトの名無しさん mailto:sage [2006/12/22(金) 11:42:53 ]
ublasのatlasへのインターフェイスをbackendと表現してるのだが
backendってそういう意味なんだっけ?

499 名前:デフォルトの名無しさん mailto:sage [2006/12/22(金) 12:01:23 ]
まあCORBAとDCOMではproxy/stubが逆転していることですし

500 名前:デフォルトの名無しさん mailto:sage [2006/12/22(金) 15:15:00 ]
>>499
それは主体をどっちに置くかという話から帰着した結果だからあんまり関係ない気が。


501 名前:デフォルトの名無しさん mailto:sage [2006/12/22(金) 23:08:58 ]
atlasは下請けや補完をやるわけだから、
ublasから見ればたくさんあるbackendの一つってことでしょ。

502 名前:デフォルトの名無しさん [2006/12/24(日) 12:39:36 ]
boostの日本語ドキュメントプロジェクトって2003年で更新止まってるよね
サーバーも落ちてるみたいだけど、誰もメンテナンスしてないの?

503 名前:デフォルトの名無しさん mailto:sage [2006/12/24(日) 17:51:43 ]
ublas今試してるんだけど、
VC++2005でboost1.33_1だとsparse_matrixとsparse_vectorは定義されていないと怒られてしまう。
matrix_sparse.hppとvector_sparse.hppはきちんとインクルードしているんだけど、なぜに?




504 名前:デフォルトの名無しさん mailto:sage [2006/12/24(日) 18:41:52 ]
しかも、mat[i][j]とかで行列の要素にアクセスするとか、lu_factorizeもコンパイルエラー。なんでやろ・・・。

505 名前:デフォルトの名無しさん mailto:sage [2006/12/24(日) 18:49:16 ]
エラーメッセージも張らずに日記かよ。いい加減にしろ

506 名前:デフォルトの名無しさん mailto:sage [2006/12/25(月) 13:27:53 ]
>>504
mat[i][j]の書き方はできなくなった
今は
mat(i,j)


507 名前:デフォルトの名無しさん mailto:sage [2006/12/25(月) 13:47:21 ]
Boost.Python でPythonから呼ぶようにした関数って
Cとして呼ぶよりも処理が遅くなったりするの?


508 名前:デフォルトの名無しさん mailto:sage [2006/12/26(火) 16:16:15 ]
すみませんが、質問です。
Debian Sarge(EUC-JP)上でBoostのsplitなどをを使いたいのですが、ソースコー
ドの文字列をEUC-JPにするとエラーになってしまいます。

#include <boost/algorithm/string.hpp> を含むソースで
g++-3.4 -finput-charset=EUC-JP -fexec-charset=EUC-JP test05.cpp -o test05
を実行すると、
/usr/include/boost/function/function_base.hpp:23:25: failure to convert EUC-JP to UTF-8
このようなエラーに。
なお、ソースではwchar_t, wstringを使っています。

ソースをUTF-8に、オプションを-finput-charset=UTF-8 にすると動くように
なりますが、やはりこれは不便です。

ソースをEUC-JPのままで使う方法はないでしょうか?


509 名前:デフォルトの名無しさん [2006/12/26(火) 18:55:42 ]
age

510 名前:508 mailto:sage [2006/12/26(火) 19:42:26 ]
追記です。
コンパイル時のエラーは、こんな単純なソースでも起こってしまいます。
エラー再現には、ソースにワイド文字リテラルが含まれる必要はありません。
------------------
#include <boost/algorithm/string.hpp>

int main(void)
{
return 0;
}
------------------
g++-3.4 -finput-charset=EUC-JP -fexec-charset=EUC-JP test06.cpp -o test06

/usr/include/boost/function/function_base.hpp:23:25: failure to convert EUC-JP \to UTF-8

EUC-JPではマルチバイト文字を使えということなのかもしれませんが、せっかく
対応しているのだからワイド文字を使いたいのです。


511 名前:デフォルトの名無しさん mailto:sage [2006/12/26(火) 19:56:55 ]
>>510
boost/ref.hppがLatin-1で書かれているのが問題っぽいな。
ASCIIに直すようにお願いする位しか解決策が思いつかないが。

512 名前:508 mailto:sage [2006/12/26(火) 20:20:55 ]
>>511
ありがとうございます。
ref.hppの17行目でしょうか?そこを削除しても、やはり同じエラーが出ます。

他に気づいたことは、-finput-charset=utf8 などと書いても、「UTF-8に変換
できない」というエラーになることです。大文字ハイフン入りの「UTF-8」以外
受け付けません。

もしかしたらGCC自体が、テンプレートライブラリがUTF-8以外であることに対応
していないのでしょうか?


513 名前:デフォルトの名無しさん mailto:sage [2006/12/26(火) 20:38:10 ]
>>508
この辺を参考に
search.gmane.org/?query=windows+unicode+gcc&group=gmane.comp.gcc.devel
permalink.gmane.org/gmane.comp.gcc.devel/78542

>>512
インクルードファイルの中に他にも含まれていないか
チェック。utility/enable_if.hpp とか

$ iconv -l

で使用できる文字コードは分かる



514 名前:508 mailto:sage [2006/12/26(火) 21:08:11 ]
>>513
ありがとうございます。よく読んでいませんが、結局コードの変換ルールが問
題ということでしょうか。

grep -r Jaakko /usr/include/boost/

これで検索したところ66件ありました。他にもlatin-1の名前はあるかもしれ
ません。さすがに直す気が失せました。

とりあえず、コンパイル前にiconvをかけることにします。いずれはUTF-8環境
に移行した方が良さそうです。


515 名前:508 mailto:sage [2006/12/27(水) 00:25:09 ]
permalink.gmane.org/gmane.comp.gcc.devel/78542
を読んで思ったのですが、どうやらUTF-8にすれば完全解決というわけではな
いようですね。

g++ -finput-charset=EUC-JP

こう書くと、GCCはソースファイルを、includeされるヘッダライブラリまです
べてEUC-JPだとみなします。そしてそれを libiconv で UTF-8 に変換しよう
とします。このとき(ヘッダファイルに)EUC-JPに含まれない文字コード
(Latin-1など)があったらエラーになってしまいます。

g++ -finput-charset=UTF-8 (または-finput_charsetの指定なし)

こう書くと、GCCはソースファイルを、includeされるヘッダライブラリまです
べてUTF-8だとみなします。しかし今度は変換の必要がないので、libiconv は
呼ばれません。ヘッダライブラリも変換されません。

これで通常は問題はなくなるわけです。しかし、

・ヘッダライブラリのエンコーディングがUTF-8でない。
・ヘッダライブラリに wcha_tのリテラルがある。

(あまりないでしょうが、)この2つが同時に起こると、ライブラリは正しく
動作しません。

結局、すべてのヘッダファイルがUTF-8で統一されるか、Pythonのように各ソー
スファイルにエンコーディングの宣言ができるようにしないと、完全解決とは
言えないようです。いずれも一ユーザにはどうしようもない話ですが。

Boostとあんまり関係なくてすみません。

516 名前:デフォルトの名無しさん [2006/12/27(水) 13:04:16 ]
初心者的質問で申し訳ありません。
>>391でインストールするとき、最初に
default variantsを選んでください
って言われて、
Multithred Debug, DLL
Multithred, DLL
Multithred
Multithred, static runtime
Multithred, Debug, static runtime
Single thred, static runtime
Single thred, Debug, static runtime
の中から選択させられるんですが、ノーパソ用ペンティアム3(1.13GHz)とノースウッドコアペンティアム4(3.2Ghz)
の場合、どれを選べばいいんでしょうか。
マルチスレッデッィングとシングルスレッディング用CPUの違いくらいしか分からないので・・・

517 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 14:35:53 ]
Multithred/Single thredはCPUの問題じゃない


518 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 14:36:53 ]
boostにはデバッグは特にいらないと思う。かなりでかくなるから。
DLLにするかどうかだけど、初心者ならスタティックでいいと思う。
あとはスレッドを利用するならマルチスレッド、しないならシングルスレッド。
シングルスレッドで速度を追求するならシングルスレッドだけど
通常はマルチスレッドでいいと思う。

519 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 14:37:16 ]
thred?

520 名前:518 mailto:sage [2006/12/27(水) 14:37:42 ]
訂正
×特に ○別に

521 名前:516 [2006/12/27(水) 14:45:12 ]
ありがとうございます。
ではとりあえず
Multithred, static runtime
でインストールして使ってみます。
なお、参考までにお聞きしたいのですが、DLLにするとどういった使い方が可能になるのですか?

522 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 14:49:20 ]
templateなlibraryにDLLもくそもないから気にするな。

523 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 15:11:02 ]
>>521
DLLの特長はここに書いてある。
e-words.jp/w/DLL.html
必要ならDLLを選ぶといいと思う。



524 名前:デフォルトの名無しさん [2006/12/27(水) 16:19:19 ]
vc2005 sp1の現状

std;;wstring s = L"漢字";
// std::wcout << s << std::endl; //←ここをコメントアウトすると何もでなくなる
std::wcout.imbue(std::locale("japanese")
std::wcout << s << std::endl; //←出る
std::locale::global(std::locale("C"));
std::wcout << s << std::endl; //←出る

よくわかんないけどMSの開発担当者はもっとまともなロケール実装者が来るまで正座な。


525 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 16:22:23 ]
boostとは直接関係ないけど、これ直ってないのか。なんのためのSPなんだか('A`)

526 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 20:10:24 ]
>>524
とりあえずSTLport使っとくとlocale::globalの後に
それぞれimbueすればちゃんと動くらしいよ。
付属のだとそれすら効かない。

std::locale loc("japanese");
std::locale::global(loc);
std::wcout.imbue(loc);
std::wcout << L"ぶーすと" << std::endl;

527 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 23:15:10 ]
ublasでrankは求められなかとですかい?
rank求めるのにlu分解は精度の問題で、一般には使われてないとか書いてるけど、
どの程度精度に問題でてくるんだろうね。

528 名前:デフォルトの名無しさん mailto:sage [2006/12/28(木) 12:41:32 ]
ttp://www.page.sannet.ne.jp/d_takahashi/boost/ublas/index.htmlを参考にして
ublasで逆行列を求めようとしているのですが、lu_factorizeの呼び出しでコンパイルエラーになります。
エラーメッセージが大量なので、ソースと一緒にアップローダに上げておきます。
ttp://zetubou.mine.nu/itoshiki/nozomu/zetubou3677.zip

529 名前:デフォルトの名無しさん mailto:sage [2006/12/28(木) 13:06:13 ]
実行時エラーなら出るがコンパイルエラーは出ないな。
VC8SP1 + Boostは11月の頭にCVSから

F:\>cl -nologo -EHsc -ID:\Boost inv.cpp
inv.cpp

F:\>inv.exe
Check failed in file D:\Boost\boost/numeric/ublas/triangular.hpp at line 2435:
e1 () (n, n) != value_type ()

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.

F:\>


530 名前:デフォルトの名無しさん mailto:sage [2006/12/28(木) 15:50:10 ]
November 28, 2006 - Function Types Accepted

531 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 19:50:03 ]
VC7 でserializationのlib出きへんのやけど
なんか必要?

532 名前:528 mailto:sage [2006/12/29(金) 20:29:50 ]
boostを1.32.0に入れ替えてみたところコンパイル出来ました。
実行時エラーは、おそらく係数行列を適当に設定したため発生したのだと思います。
係数行列を参考サイトと同じ行列にしたところ、同様の結果が得られました。
ublas使う時だけ1.32.0で行くことにします。ありがとうございました。

533 名前:デフォルトの名無しさん mailto:sage [2007/01/03(水) 10:46:57 ]
>>3にリンクされてるPOCOって使ってる人いる?
今日落として試してみたんだけど、SampleについてるEchoServerの挙動が
微妙におかしくて……
原因は一応分かったのだが、英語力が無いからまっとうなバグレポ
送れにゃいよ。




534 名前:デフォルトの名無しさん mailto:sage [2007/01/03(水) 14:13:46 ]
>>533
英語力ないからって言ってると永遠に身につかないよ。
バグレポなら状況を箇条書きにして送るだけでも大丈夫、ただし返信が来たらしらない(w


535 名前:デフォルトの名無しさん mailto:sage [2007/01/03(水) 14:59:14 ]
>>534
そうだよなあ。
とりあえず、がんがって次のようなバグレポを書き込んだ。
意味が通るかどうかは全く自信が無いw


Hello.
I'm a Japanse, so please forgive my poor English.

When I tested "EchoServer" sample, I found that it doesn't send back FIN to the client when the client sends FIN to the "EchoServer", by calling shutdown().

This is because "EchoServer" doesn't call close() function for this socket.

Why is that?

Poco::Net::StreamSocketImpl is refcounted, and close() is called when it is really destructed.

I found that Poco::Net::SocketReactor's member, _pReadableNotification, _pWritableNotification, etc. holds Poco::Net::Socket instance, until next socket event arises.
So, until then, refcount remains 1, and close() is never called.

In Poco::Net::SocketReactor::run(),
member function dispatch() is called for each socket.
I think, after that, the socket which is held by _pReadableNotification, etc. must be immediately cleared, so Poco::Net::StreamSocketImpl's refcount will be 0, and close() will be called.

536 名前:デフォルトの名無しさん [2007/01/04(木) 13:26:47 ]
boost の program_options で言及されているレスポンスファイル
に関する機能って、以前は configuration file って呼ばれていた
ものですか?単に呼び方が変わっただけですか?
www.boost.org/doc/html/program_options/howto.html#id2715898

537 名前:536 [2007/01/04(木) 13:32:57 ]
1.33.1 のソースを見てみると、
// Additional command line parser which interprets '@something' as a
// option "config-file" with the value "something"
なんて書いてあるなぁ、前からあった機能なのか。
なんか俺が勘違いしていたみたいです。

538 名前:536 [2007/01/04(木) 13:42:23 ]
追加のオプションをファイルで与えることが出来る
multiple source の機能と、コマンドラインそのものを
ファイルの形で与える response file の機能を
混同していたようです。

539 名前:デフォルトの名無しさん mailto:sage [2007/01/04(木) 14:35:43 ]
ある大学でresearch programerっていう仕事の公募が出てる
research programerていうのはboostの開発してるような人達なのかな

540 名前:536 [2007/01/04(木) 14:42:44 ]
>>539
頼まれてシミュレータなどのコードを書く人のことじゃないかなぁ。

541 名前:デフォルトの名無しさん mailto:sage [2007/01/04(木) 16:05:49 ]
>programer
programmer

542 名前:デフォルトの名無しさん mailto:sage [2007/01/04(木) 17:55:53 ]
>programmer
programer

543 名前:デフォルトの名無しさん mailto:sage [2007/01/04(木) 19:01:27 ]
pugeramer



544 名前:535 mailto:sage [2007/01/05(金) 04:25:51 ]
POCOにバグレポ書いたと思ったら、もうFixされたバージョンリリースされてた。
はえー。
拙い英文でもバグレポ書いた甲斐があったわ。
勇気付けてくれた >>534 あんがと。

545 名前:デフォルトの名無しさん mailto:sage [2007/01/05(金) 11:12:28 ]
英語力がないから>535の意味を掴み切れない_/ ̄|○
#今年は真面目に(系統立てて)勉強するかな……






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

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

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