07/07/04 02:11:29
低所得者域は既にインド化済み。
雇用形態は真逆だがな。
354:デフォルトの名無しさん
07/07/04 16:09:21
>>353
日本じゃ所得に関わりなく奥さんがお弁当とどけてくれたりしないですよ
355:デフォルトの名無しさん
07/07/04 20:08:58
サリーさんのような嫁が欲しい
356:デフォルトの名無しさん
07/07/04 20:55:27
>>349
むしろカリー化を型志向言語で体現する手法がテンプレートなんじゃないのか
357:デフォルトの名無しさん
07/07/04 22:44:35
>>349>>356
全くの見当違いですので。
358:デフォルトの名無しさん
07/07/05 00:38:36
>>349>>356
テンプレートでは引数の数は変わりません。
359:デフォルトの名無しさん
07/07/05 13:47:10
カリー化と引数の数は関係ないんじゃ?
360:デフォルトの名無しさん
07/07/05 15:38:09
関係あるだろ。自由変数が引数になる。
>>349は全くの逆だが。
361:デフォルトの名無しさん
07/07/05 18:40:45
boost::ublasのmatrixって、宣言と同時に初期化できないの?
いちいち
mat( 0, 0 ) = 1; mat( 0, 1 ) = 2; mat( 0, 2) = 3;
みたいな書き方してるとだるいし、コードが読みにくくなる・・・
Blitz++だと、
mat =
1, 2, 3,
4, 5, 6,
7, 8, 9;
みたいな書き方できるけど、イテレータがビミョーらしいしorz
> T_iterator is an iterator type. NB: this iterator is not yet fully
> implemented, and is NOT STL compatible at the present time.
362:デフォルトの名無しさん
07/07/05 18:50:26
mat =
1 = 2 = 3 =
4 = 5 = 6 =
7 = 8 = 9;
みたいなのは作ろうと思えば作れそうだな。
363:デフォルトの名無しさん
07/07/05 21:21:08
>>362
明らかに実装不可能な = を例に出すようなおまえにゃムリだな。
364:デフォルトの名無しさん
07/07/05 21:35:22
= は右結合だったな・・・。
<< でいいや。
365:デフォルトの名無しさん
07/07/05 21:51:23
右結合云々以前にoperator=はクラス外部で宣言できないから
366:デフォルトの名無しさん
07/07/05 21:58:07
せめてboost::assignみたいにmatrix_list_of(1,2,3)(4,5,6)(7,8,9)
ってできればいいんだけど
367:デフォルトの名無しさん
07/07/06 13:04:57
URLリンク(sheepman.sakura.ne.jp)
#include <boost/numeric/ublas/vector.hpp>
#include <boost/numeric/ublas/io.hpp>
#include <iostream>
int main () {
using namespace boost::numeric;
using namespace std;
ublas::vector<double> v;
istringstream is("[3] (0.1, 2, 2)");
is >> v;
cout << v << endl;
}
$./a.out
[3](0.1,2,2)
これが一番よさそうかなぁ。
matrixでできるかどうかはわからんけど
368:デフォルトの名無しさん
07/07/06 13:23:22
>>365
誰もクラス外部での話に限定してなかったけどな。
369:デフォルトの名無しさん
07/07/06 17:57:06
こんなの書いてみた
template <class T>
class Vectorizer {
public:
typedef typename boost::numeric::ublas::vector<T>::size_type size_type;
explicit Vectorizer(size_type size) : cur_(0), vector_(size) {}
template <class T2> Vectorizer& operator&(const T2& t) {
vector_(cur_++) = t;
return *this;
}
operator boost::numeric::ublas::vector<T>() const {
return vector_;
}
private:
size_type cur_;
boost::numeric::ublas::vector<T> vector_;
};
使い方
ublas::matrix<int> m(Vectorizer<int>(3) & 0 & 1 & 2); // m = [3](0,1,2)
コピーが発生するから効率は良くない・・・RVO的なものが効くかも知れないけど
rvalue-referenceが欲しいところ
370:デフォルトの名無しさん
07/07/06 18:14:44
最適化なら・・・最適化ならきっとなんとかしてくれる・・・!!
371:デフォルトの名無しさん
07/07/07 06:39:39
Visual Studio 2005 で IntelliSense がきかねぇよ・・・
しかも特定のライブラリ使ったときに顕著。
っていってたやつですが、using 使うと結構回避できるんですね。
boost::filesystem::path とか boost::spirit::file_iterator とか
がそれなんですが、 using boost::filesystem::path するとか
using filesystem=boost::filesystem すると IntelliSense が
効くみたい。
372:デフォルトの名無しさん
07/07/07 09:40:53
>>371
へぇーやってみよ
373:デフォルトの名無しさん
07/07/07 17:38:23
二版出るって。タプルのために買おうかな。
URLリンク(www.kmonos.net)
374:デフォルトの名無しさん
07/07/07 17:44:38
いつの間にか、circular_bufferが削除されてる……?
URLリンク(svn.boost.org)
一体何があった?
375:デフォルトの名無しさん
07/07/07 21:07:13
>>373
おお。
あれから(初版)だいぶboostも進化したし、時代遅れになってたから
そろそろ新しく書いてくれないかと思ってたところなんだ。
これは買おう。
376:デフォルトの名無しさん
07/07/07 21:14:27
boostそのものより、その実装に使ってる技術(とその理由)を解説したものってないのかなぁ
shared_ptrのchecked_delete
でさえ何でこんな事してんの??
とさんざん悩んだよ
よく読むとドキュメントに書いてあったけど、書いてないものもあるし・・・
377:デフォルトの名無しさん
07/07/07 21:23:54
ああ、確かにそういう本欲しいなあ。
boostを題材にModern C++みたいなことをしてくれる本
378:デフォルトの名無しさん
07/07/07 23:03:17
そんなニッチな本売れねーよ
379:デフォルトの名無しさん
07/07/07 23:23:43
俺も欲しいけどなあ、そんな本。
使い方の解説はWeb上にたくさんあるけど、仕組みまで解説したところはほぼ皆無だし。
380:デフォルトの名無しさん
07/07/07 23:44:10
C++の本自体もうあまりでねーだろうが・・・
381:デフォルトの名無しさん
07/07/07 23:44:38
>>380
382:デフォルトの名無しさん
07/07/07 23:47:18
方向性がどんどんマニアックになってるからね。
素人向けしない仕様・思想がてんこもり
383:デフォルトの名無しさん
07/07/08 04:21:56
いわゆる Smalltalk 系の OOP が好きな奴は
C# とか Java とか Ruby でいいと思うよ。
C++ はどんどんマニアックになってほしい。
384:デフォルトの名無しさん
07/07/08 05:27:34
>>373
秀和の本って紙が厚くない?
もちっと薄い紙にしてほしいけど単価高いのかなぁ。
385:デフォルトの名無しさん
07/07/08 06:48:21
最近のコンパイライには tr1 名前空間以下にいろいろと
用意されているの?
386:デフォルトの名無しさん
07/07/08 07:00:42
お化けのqueue太郎が復刊されるらしいね
387:デフォルトの名無しさん
07/07/08 07:41:18
blogに内部構造の話書こうかと思ったけど、
解読している時間が少なくなってしまってもったいないんだよね。
持続してblogに技術話書き続けている人って本当にすごい。
388:デフォルトの名無しさん
07/07/08 07:50:52
>>387
自分のメモ程度の物でいいんじゃないの?
そういうサイトも結構役に立つんだよね、暗中模索しちゃったときとか