■過去ログ置き場に戻る■ 1- 前250 次250 最新50


[memo] "9999999999_00.html#R20" という感じで、URLの最後に "#RレスNo" を追加すると幸せになれます。

C++相談室 part35
751 名前:デフォルトの名無しさん :04/09/18 15:08:02
>>730
>>721
クスクス・・・

752 名前:デフォルトの名無しさん :04/09/18 15:18:06
レスのやり取りをみてると、721は何も悪くない。
730の方がスゲー感じ悪いよ。

753 名前:デフォルトの名無しさん :04/09/18 15:55:41
>>749
いや、それでもいいのですが、それだと今までに作ったプログラムを結構書き換えなければ
ならないんですね。うーむ、うまい方法はないものでしょうか。

754 名前:デフォルトの名無しさん :04/09/18 16:21:56
>>753
ならdouble**版とdouble版をオーバーロードしたらどうだ。
ただし周りを混乱させる諸刃の剣。

そういやvoid print_pointer2D(double c);なんて関数名と引数が合っていないな。
ますます混乱させる度合いが上がるぞ。

755 名前:デフォルトの名無しさん :04/09/18 16:24:38
やっぱそれしかないですか。。
根性で今までのプログラム書き換えます。
どうもありがとうございました。

756 名前:デフォルトの名無しさん :04/09/18 16:26:07
こういうのってリファクタリングツール使えば簡単に直せるんじゃないの?
C++用ノリファクタリングツールがあるかどうかはしらんが。

757 名前:デフォルトの名無しさん :04/09/18 19:52:40
>>731
これ,うちではうまく動きますよ.
環境はgccが3.3.4で,libstdc++はそれについてきてるやつかな?
Debian GNU/Linuxなもので,
gccとlibstdc++は別にパッケージしてあります.
パッケージのバージョン(リビジョン)は,
g++-3.3 3.3.4-6sarge1.2
libstdc++5 3.3.4-6sarge1.2
です.

gccでうまく動かないとおっしゃる731さんはどんな環境なのですか?


758 名前:デフォルトの名無しさん :04/09/18 19:54:38
別方向から食いついてるな

759 名前:デフォルトの名無しさん :04/09/18 21:41:20
>>757
とりあえずcygwinだと動かないよ。
でもcygwinはnewlibだったかな?
newlibはmingwか。

760 名前:デフォルトの名無しさん :04/09/18 21:42:27
ここは標準スレですコンパイラ比較スレではありませんコンパイラの比較は
【初心者歓迎】C/C++室 Ver.9【環境依存OK】
http://pc5.2ch.net/test/read.cgi/tech/1094494997/
でどうぞ


761 名前:デフォルトの名無しさん :04/09/18 22:32:58
Rubydeすべてかいけつ。」
留byさいきょうげんご
るびーーーーーーーーーーーー

762 名前:デフォルトの名無しさん :04/09/18 23:20:55
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/lounge/file/1074774948_35/code.txt


配列とポインタがらみの質問なのですが
int hairetu[10]; int* point = hairetu; とするとpointにはhairetu[0]のアドレスが入るんですよね?
さらに*(point+9)とするとhairetu[9](最後尾)の内容を表すと思うのですが、
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/lounge/file/1074774948_35/code.txt 
↑このコードのtmpint.array+10というのはarray[0]から10個先のarray[11]を指しているように見えるのですが・・・

763 名前:デフォルトの名無しさん :04/09/18 23:23:55
間違えました、array[10]を指しているように見えるのですが、arrayは[10]で定義されているので最後尾が[9]までだと思うんです。
これって配列の最後尾より大きいところを指しているように見えるのですが。。

764 名前:デフォルトの名無しさん :04/09/18 23:28:06
>>763
[ first, last )

765 名前:763 :04/09/18 23:50:50
書き忘れました、何度もすみません。
このコードを実際に動かしてみるとしっかりとarray[9]を指していることが分かるのですが
最初に書いた例で行くと、point+1はhairetu[1]のアドレスを意味するのになぜこの場合はtmpint.array+10でarray[9]を意味するのでしょうか?

766 名前:デフォルトの名無しさん :04/09/19 00:05:18
>>765 意味しないよ

767 名前:デフォルトの名無しさん :04/09/19 00:05:32
>>765
>この場合はtmpint.array+10でarray[9]を意味する
ここの理解が違います。tmpint.array+10はarray[10]のアドレスを指してます。
STLアルゴリズムの範囲の指定の仕方を調べて下さい。(答えは764。)


768 名前:デフォルトの名無しさん :04/09/19 00:06:13
終了条件

769 名前:デフォルトの名無しさん :04/09/19 00:07:44
質問の直後に出てる答えをスルーする質問者って多いな。

770 名前:デフォルトの名無しさん :04/09/19 00:09:03
[ first, last )
これは高校数学を習ってないと分からないからな

771 名前:デフォルトの名無しさん :04/09/19 00:51:20
>>770
高校数学じゃないって。大学の教養課程だ。

772 名前:デフォルトの名無しさん :04/09/19 00:56:49
>>771
極限は数V

773 名前:デフォルトの名無しさん :04/09/19 01:08:59
CSVファイルみたなテキストファイルからデータを読みたい時とか、
Cの標準ライブラリの場合はfgets()とsscanf()を使います。

C++の標準ライブラリの場合は行の読み込みではgetline()を使えますが
string型の文字列をカンマ単位で分けたい時なんかは
何か関数が用意されていたりしますでしょうか?
やっぱりsscanf()がよく使われているのでしょうか?

それとも1行の文字列からstringstreamを作り、get()で1文字ずつ読み込んで
区切り文字でないかどうか判定するループを組む処理のが一般に行われているのでしょうか?
例えばこのページの「文字列切り分け」のところのように。
http://cham.ne.jp/piro/p_cp.html


774 名前:デフォルトの名無しさん :04/09/19 01:11:05
fscanfで正規表現のようなものが使えます
ぐぐってみて


775 名前:デフォルトの名無しさん :04/09/19 01:13:11
boost::tokenizer

776 名前:デフォルトの名無しさん :04/09/19 01:16:12
BCB使ってるんでboostは使えません

777 名前:デフォルトの名無しさん :04/09/19 01:16:39
777

778 名前:デフォルトの名無しさん :04/09/19 01:19:54
>>776
boost::tokenizerは別に使えるようだが。

779 名前:763 :04/09/19 01:20:58
レス遅れてすみません。
教えていただいた内容で調べてみることにします。
ありがとうございました。

780 名前:763 :04/09/19 01:27:05
すみません、最後にどうしても気になったのでひとつ。
>>tmpint.array+10はarray[10]のアドレスを指してます
配列の最大を超える見たいですが、これに問題はないのでしょうか?
もし問題がなければ配列の大きさなんて関係なしに[1]とか適当にやっておいて後から[2]とか適当に足していくことができるんですか?


781 名前:デフォルトの名無しさん :04/09/19 01:30:10
>>780
> 配列の最大を超える見たいですが、これに問題はないのでしょうか?
int a[10]; と定義したら、読み書きして良いのは a[0] から a[9] まで。

ただし例外として &a[10]; (有効なアドレスの次のアドレス) は取得して OK。
もちろん a[10] を読み書きしたらアウト。

782 名前:デフォルトの名無しさん :04/09/19 01:34:29
別にアドレスの取得自体は何を取得しても問題ないべ

783 名前:763 :04/09/19 01:34:40
>>781
なるほど、そんな例外があったんですね。。
入門書をいろいろ読んできたのですが一度もそんな内容を見ていなかったのでわかりませんでした・・
となると、sortなどは1番目の引数に配列の先頭のアドレス、2番目に配列の最大より一つ大きいところのアドレスを指定する必要があるんですね。

784 名前:デフォルトの名無しさん :04/09/19 02:01:50
boost の勉強にオススメな本って何かありますか?

785 名前:デフォルトの名無しさん :04/09/19 02:08:23
>>782
規格上は &a[11] とかは未定義だよ。

ま、ふつーは問題ないけど 32bit アーキテクチャで &a[2ギガ] とかやると、
ポインタがオーバーフローして別の有効な変数のアドレスに一致したり
NULL と一致したりして泣くかも知れず。

786 名前:デフォルトの名無しさん :04/09/19 02:10:29
>>772
は?

高校数学では、括弧に意味付けする記述は使わんだろ。

787 名前:デフォルトの名無しさん :04/09/19 02:12:37
そうなの?私立だったから習ったのかな?

788 名前:デフォルトの名無しさん :04/09/19 02:14:13
教科書には
[, ] (, ) の説明はちゃんとしてある

789 名前:デフォルトの名無しさん :04/09/19 02:21:48
>>788
何時ごろの教科書?
最近?

790 名前:デフォルトの名無しさん :04/09/19 02:29:13
>>789
超最近

791 名前:デフォルトの名無しさん :04/09/19 03:17:57
高校では、「界」を抽象的には扱わんだろ。
わざわざ括弧での記述を教える意味がない。
扱うものが1次元の数値だけなので不等号で十分でしょが。

高校の教科書にホントに出てるの?
あやしい。

792 名前:デフォルトの名無しさん :04/09/19 03:21:48
>>791
あなたもしつこい人ですね
出てるったら出てるんです

793 名前:デフォルトの名無しさん :04/09/19 03:27:15
数学の話は数学板でどうぞ

794 名前:デフォルトの名無しさん :04/09/19 03:27:56
>>792
(・∀・)ニヤニヤ

嘘くさ・・・(w


795 名前:デフォルトの名無しさん :04/09/19 03:56:55
>>773
getlineではデリミタが指定できるんだが。

796 名前:デフォルトの名無しさん :04/09/19 03:59:30
[]と()は開区間と閉区間の説明で、高校の教科書に出てくる。
ただ、説明だけが出てきてまったく使わないだけのこと。
少なくとも4年前には出てた。

797 名前:773 :04/09/19 04:08:27
お答えありがとうございました。
getlineでデリミタ指定できるのは知りませんでした。
boostのtokenizerも知りませんでした。

798 名前:デフォルトの名無しさん :04/09/19 04:43:10
>>794は中卒だから知らないんだよw

799 名前:デフォルトの名無しさん :04/09/19 09:48:05
C++相談室なのにCの話題書いてくる香具師大杉
生配列とか生charに関する質問はCスレでやれと言いたい

800 名前:デフォルトの名無しさん :04/09/19 10:08:59
ちょっとお聞きしたいのですが…

クラス x と、その派生クラス y があるとします。
また、これらのクラスを扱う DLL が 3 つあるとします。

ある DLL_A が、別の DLL_B に実装してある、y を new し x* で返す関数を呼び出し、
そのポインタを、別の DLL_C に実装してある、x* を引数に取る関数に渡した場合、
引数を受けた DLL_C は、x* を y* に dynamic_cast できますか?

VC.NET で上記の DLL を作成したところ、うまくキャストできましたが、
違うコンパイラ/環境で作成した DLL だとまずいことになるでしょうか?

DLL_A は x のヘッダのみインクルード、
DLL_B, DLL_C は x, y の実装されたライブラリをリンクしています。
DLL_A は、実行時に LoadLibrary で DLL_B, DLL_C を動的読み込みしています。


801 名前:デフォルトの名無しさん :04/09/19 10:47:36
>>800
ABI,vtbl,RTTI,SEHの形式や使い方が違うコンパイラだったら
当然まずいんじゃないの?

802 名前:デフォルトの名無しさん :04/09/19 10:52:47
>>800
>>760

803 名前:デフォルトの名無しさん :04/09/19 13:12:28
>>799
「Cの」ではなく、CでもありC++でもある領域の問題だろが
CとC++の共通項はどちらでもいいし、C特有の問題はCスレ、C++特有の問題はC++スレで何の問題があるんだ?

804 名前:デフォルトの名無しさん :04/09/19 13:16:41
>>803
俺も同意見

805 名前:デフォルトの名無しさん :04/09/19 13:44:50
C特有の問題でもC++的なアプローチを示せる可能性だってあるしねぇ

806 名前:デフォルトの名無しさん :04/09/19 13:49:05
どっちでもいいじゃん

807 名前:デフォルトの名無しさん :04/09/19 15:05:29
>>805
漏れもそう思う。
標準のC++クラスやboostを使うことにこだわるのとは意味がちがう。
C++的解決方法は他にもたくさんある。

808 名前:デフォルトの名無しさん :04/09/19 16:59:53
template <class T>
class DynamicPtr
{
public:
T** data;
UINT nInst;
public:
DynamicPtr();
~DynamicPtr();
void Add(); //追加
};
template <class T>
void DynamicPtr<T>::Add(){
nInst++;
data = (T**)realloc( data, sizeof(T*)*nInst );
data[nInst-1] = new T;
}
DynamicPtr<MyData> dptr;
Addメソッドで一つずつ動的に確保するクラス(コンストラクタ呼び出したいが為のダブルポインタ使用)
なんですが、dataメンバを使う時、dptr.data[5]->メソッドてなるから
直接的にdptr[5]->メソッドていう風に手間を省きたい。
早く言えば、ATLの CComPtr<IDirect3DDevice> m_pd3dDevice
みたいな事が実現したいです。m_pd3dDevice.data->メソッドとはなりませんよね。
変数名(dptr)そのものがT**になって欲しいという意味です。
長文ご免。

809 名前:デフォルトの名無しさん :04/09/19 17:14:44
車輪をつくるな!!!

810 名前:デフォルトの名無しさん :04/09/19 17:16:09
車輪がなきゃ走れないよ

811 名前:デフォルトの名無しさん :04/09/19 17:17:11
走る必要なんてないよ

812 名前:デフォルトの名無しさん :04/09/19 17:25:17
他人がどうこう言うこっちゃねぇ

813 名前:デフォルトの名無しさん :04/09/19 17:37:44
きっとT* operator[](int)を定義するんだ

814 名前:デフォルトの名無しさん :04/09/19 17:41:24
車輪の再発明は、プラモデル感覚が楽しいのは確かだ。
ただ、プラモデルを実務に導入するのはまずい。
実際に作って構造を理解するのには役立つが、それ以上のものであってはならない。

815 名前:デフォルトの名無しさん :04/09/19 17:43:47
>>800
(例) MetrowerksCodeWarriorPro8.3forWinReleaseNotesより抜粋
* データメンバーを使う多重継承のクラスレイアウトはMSVCと完全互換ではありま
 せん。異なるコンパイラでコンパイルされたモジュール間ではこの機能に使用し
 てデータを共用することはしないでください。
こういうことがあるから、dll間でクラスのやり取りは基本的に無理だと考えておいた
ほうがよい。

816 名前:デフォルトの名無しさん :04/09/19 20:02:42
>>808
メンバ関数にこれを追加
operator T**() {return data;}

817 名前:デフォルトの名無しさん :04/09/19 20:16:13
Ruby >>>>>>>>>>>>> C++

818 名前:デフォルトの名無しさん :04/09/19 20:20:08
ルビ厨が4年前からタイムスリップしてきたかのようだ。
懐かしいな。

819 名前:デフォルトの名無しさん :04/09/19 20:29:28
boostっていつ標準C++に入るの?
もう何個かは決まってるんでしょ?
さっさとして欲しい

820 名前:デフォルトの名無しさん :04/09/19 20:44:00
2009年くらい

821 名前:デフォルトの名無しさん :04/09/19 20:46:31
>>820
あれは実は16進だから2015年までだったりして

822 名前:デフォルトの名無しさん :04/09/19 20:53:45
16進だと何故2015年なんだろう…

823 名前:デフォルトの名無しさん :04/09/19 20:57:29
0x

0x○
って事じゃないの?

824 名前:デフォルトの名無しさん :04/09/19 20:59:47
ルビ厨が暴れてたころを知らんのだがどこみればいい?

825 名前:デフォルトの名無しさん :04/09/19 21:03:32
0x9 == 9 のような気が

826 名前:デフォルトの名無しさん :04/09/19 21:06:34
>>825
0xF == 15

827 名前:デフォルトの名無しさん :04/09/19 21:07:55
>>821
そもそも
0x1000
とかも出来るから何年にでも出来るんじゃないの?

828 名前:デフォルトの名無しさん :04/09/19 21:08:14
2009ってlonghornよりも後じゃん…

829 名前:デフォルトの名無しさん :04/09/19 21:11:13
日本語のページのみ検索するようにして次世代C++の呼び名でぐぐると
良く分かんないハングルのページばっかり引っかかるのはgoogleの嫌がらせか?

830 名前:800 :04/09/19 21:55:35
>>801
>>815
お答えいただきありがとうございました。
イベントクラスの、フレームワーク・外部モジュール間の受け渡しを考えていたんですが、
なかなか難しいようで…もうちょっと頭をひねってみます。

>>802
参考にさせていただきます。

831 名前:デフォルトの名無しさん :04/09/19 22:44:22
>>824

http://web.archive.org/web/20000302001334/http://www.ruby-lang.org/ja/compar.html
--------------------------------------------------------------------------

C++
いろいろと有名なオブジェクト指向言語であるC++とRubyを比較すると:


C++なぞ問題外.^^;;;

--------------------------------------------------------------------------
ちなみに、英語版には記載がない(ぷ


832 名前:デフォルトの名無しさん :04/09/19 23:10:54
>>831
thx. こりゃキッツー。勘違いルビ厨が暴れるのも分かるワ

833 名前:デフォルトの名無しさん :04/09/19 23:34:13
Ruby>>>>>>>>>>>>>>>>>>>>>>>>>>>>> C++
ばーか。C++ユーザ死ねよ
Ruby以外の言語は糞なんだよ。そんなことも分からないの?



834 名前:デフォルトの名無しさん :04/09/19 23:35:56
SE「これからはRubyなんだ!Rubyの案件持ってきてくれよYO!」
営業「・・・」
課長「・・・」
部長「るびーって何だね?」



営業「おい、Rubyの案件なんてなかったぞ!」
SE「ちゃんと探してんのか?ゴルァ!!」
営業「それよりこっちのC++の見積り早く出してよ」
SE「・・・」
課長「プッ」
部長「るびーって何だね?」

835 名前:デフォルトの名無しさん :04/09/19 23:36:40
簡単なsmtpクライアントを作ろうと思ったのですが日本語エンコードの問題に
ぶち当たってしまいました。エンコード変換にはいろいろ方法があるようですが
なんとか見慣れたstream系の書式のままエンコード変換→送信する方法はないでしょうか?
コンパイラはminGW、socketのラッパーとしてgimite/socketというのを使ってます。


836 名前:デフォルトの名無しさん :04/09/19 23:38:29
Rubydesubetekaiketu!

837 名前:835 :04/09/19 23:41:50
RubyではHTTPクライアントを作った事がありますが、
確かにC++に比べて全然簡単ですね(涙

838 名前:デフォルトの名無しさん :04/09/20 00:03:35
>>835
そういうストリームクラス作ればいいじゃん。


839 名前:デフォルトの名無しさん :04/09/20 00:27:13
いcおんv

840 名前:835 :04/09/20 00:54:55
iconvってcharベースじゃないですかw
コレ使って内容書き換えるstreamクラス作るしかないのかなぁ
なんかやろうとしてる事に対して大げさすぎる気が(汗
理想的にはiomanipみたいな感覚で
stream << encode("Shift_JIS");ってできたらいいのになぁ。
誰か作ってないのかなぁ・・・。


841 名前:808 :04/09/20 01:14:50
レスありがとうございました。
よければ標準ライブラリで動的確保を行うクラス列挙してもらえませんか。みなさんがよく使われるモノ知りたいです

842 名前:デフォルトの名無しさん :04/09/20 01:22:28
>>840
バッファに直接アクセスしにくいiostream系は応用面でオhル。
あまり当てにしないほうがいい。

843 名前:デフォルトの名無しさん :04/09/20 01:40:13
いbm いcう

844 名前:808 :04/09/20 01:44:09
vectorクラスっての使ってみます。調べずに聞いてごめんなさい。

845 名前:デフォルトの名無しさん :04/09/20 02:38:23
>>835
http://tricklib.com/cxx/ex/babel/

846 名前:835 :04/09/20 02:47:17
>>845
ぬお!まさに求めていたモノに近い(嬉
不安定そうな名前といやに多いマクロが心配ですが使ってみまつ。
ありがとう。

847 名前:デフォルトの名無しさん :04/09/20 02:50:36
そいや昔BoostのMLで「コード変換ライブラリ欲しい」「iconvがあるじゃねぇか」「iconvはライセンス的にクソ」みたいなやりとりがあった気がするな。その後どうなったのか知らんが。

848 名前:デフォルトの名無しさん :04/09/20 03:08:44
>>846
gimite/socketの作者も利用してるみたいだから
頼めば、gimite/socket に組み込んだモノを用意してくれかもしれんよ。

849 名前:デフォルトの名無しさん :04/09/20 06:16:00
ライセンスが面倒なのでそこらへんは自作してるなぁ。>iconv

850 名前:デフォルトの名無しさん :04/09/20 12:57:43
純粋仮想constメンバ関数は
virtual void ConstFunction() const = 0;
でいいのですか?

851 名前:デフォルトの名無しさん :04/09/20 12:58:54
>>850 まずコンパイラに聞け。

852 名前:デフォルトの名無しさん :04/09/20 13:08:33
しらないならすなおにしりませんっていえよ
友達いねーだろw

853 名前:デフォルトの名無しさん :04/09/20 13:11:57
Rubysaikyou!!!!!!!

854 名前:デフォルトの名無しさん :04/09/20 13:17:57
ですねw

855 名前:デフォルトの名無しさん :04/09/20 13:36:28
C++は最強──・ε・)・π・)・ι・)σ)・τ・)・η・)・μ・)・η・)──!!!

856 名前:デフォルトの名無しさん :04/09/20 13:38:17
ですねw

857 名前:デフォルトの名無しさん :04/09/20 15:28:18
>>855
えぴすてーめーハケーン

858 名前:デフォルトの名無しさん :04/09/20 17:15:35
>>850
const修飾の有無はどうでもいいことなのです

> virtual void ConstFunction() const = 0;

よろしい


859 名前:デフォルトの名無しさん :04/09/20 21:58:16
ふと気になったのだけど、
draw_lineとdrawLine、アンダースコアでセパレートするのと小文字で始め大文字区切りにするのと、
C++ではどちらを好きな人が多いのかな?

860 名前:デフォルトの名無しさん :04/09/20 22:00:24
Ruby <>>><<<<<<<<<<<<<<<<<<JMMMMMMMMMMMPOC+++++++++

861 名前:デフォルトの名無しさん :04/09/20 22:04:39
関数や制御構造ローカル>draw_line
それより大きいスコープ>DrawLine
3文字以下の名前>ABC
どの名前も適さない一時変数>FILE* file/POINT point/int i/float f

862 名前:デフォルトの名無しさん :04/09/20 22:09:54
なんだか知らないけどここにウィルス置いときますね
ttp://pukapuka.s1.x-beat.com/img-box/img20040920215205.lzh

863 名前:デフォルトの名無しさん :04/09/20 22:10:34
俺はDrawLine派

864 名前:デフォルトの名無しさん :04/09/20 22:22:08
>>859
Win32 系のプログラムだと API に合わせて DrawLine
でも STL や Boost だと draw_line

ま、何でも良いよ。

865 名前:デフォルトの名無しさん :04/09/20 22:23:38
Win32系でboost使う場合は?
ちなみに漏れは draw_line
この方がなんか目に優しい感じがするから

866 名前:デフォルトの名無しさん :04/09/20 22:28:13
質問なんですが、

void main()
{

}

で、コンパイルエラーを出すのと出さないのでは何が違うのですか?

エラーを出すコンパイラ
gcc など gnu系(MinGWなど)

エラーを出さず正常にコンパイルできるコンパイラ
VisualStudio.Net 2003
Borland C++ compiler 5.5.1


867 名前:デフォルトの名無しさん :04/09/20 22:31:13
ホントはdraw-lineと書きたい。

868 名前:デフォルトの名無しさん :04/09/20 22:32:11
工エエェェ(´д`)ェェエエ工

869 名前:デフォルトの名無しさん :04/09/20 22:41:03
draw_lineのほうがお肌に優しいと聞いた。

870 名前:デフォルトの名無しさん :04/09/20 22:46:13
アンダースコアなーじっくりみないとスペースに見えてしまうんだよ。
アンダースコートならそれでいいんだけどなー。

871 名前:デフォルトの名無しさん :04/09/20 22:48:42
>>866
mainエントリポイントの返り値にvoidが不正・・・だったはず


872 名前:デフォルトの名無しさん :04/09/20 22:53:42
>>866
自己解決
http://www.research.att.com/~bs/bs_faq2.html#void-main

873 名前:デフォルトの名無しさん :04/09/20 23:13:26
>>870
使ってるフォントが悪いな。

874 名前:835 :04/09/21 01:10:39
835です。
皆様のおかげでC++のstream書式で無事にsmtpクライアントを書くことができました。
babelはShift_JIS->iso-2022-jpへの直接変換ができないみたなので焦りましたがw。
また有名(?)なbare LF問題で小1時間悩んだり・・・ヘボくてすみません。

最後に質問させてください。
今ファイル添付の機能をつけようと思ってbase64変換ライブラリを探しているのですが、
gmite/socketやbabelと同様にstring or streamを操作するタイプのものを求めています。
cやPerlのものは結構見つかるのですが・・・良いのがあったら教えてください。お願いします。


875 名前:デフォルトの名無しさん :04/09/21 02:28:52
>>874
それぐらいならその c や perl のヤツを元に自分で書き起こしてもいいんじゃない?

876 名前:デフォルトの名無しさん :04/09/21 02:59:07
sf.net

877 名前:デフォルトの名無しさん :04/09/21 04:51:54
boost::spirit が半端なく重いのですがどうしたらよいでしょうか

878 名前:デフォルトの名無しさん :04/09/21 06:02:26
使わない

879 名前:デフォルトの名無しさん :04/09/21 06:44:51
なんだか知らないけどここにもウィルス置いときますね
ttp://pukapuka.s1.x-beat.com/img-box/img20040920215205.lzh

880 名前:デフォルトの名無しさん :04/09/21 08:27:00
・CPUを速いのに変える
・CPUを増やす
・flex/bisonでがんばる


881 名前:デフォルトの名無しさん :04/09/21 10:52:21
>>877
詳しくよろ

882 名前:デフォルトの名無しさん :04/09/21 10:53:57
よろも何もboost::spiritが糞重いのは常識だと思うんだが。
サンプルコンパイルしてみりゃ分かる。
実用的な物を作りたいならflexとbison使うべき。

883 名前:デフォルトの名無しさん :04/09/21 11:05:08
spiritとflex/bisonの組み合わせを比較したって意味ですよね?
どれくらい差があったの?
若しくはどのサンプルが遅かったのか教えてください。

884 名前:デフォルトの名無しさん :04/09/21 11:11:34
>>883
http://spirit.sourceforge.net/repository/applications/show_contents.php
とりあえずCでも動かしてみて下さいな。
grammer checkしかしてないのに何でこんなに遅いんだと思うよ。

885 名前:デフォルトの名無しさん :04/09/21 11:13:43
生成される実行ファイルも異様にでかいよね。spiritは。

886 名前:デフォルトの名無しさん :04/09/21 11:20:37
まあspiritはc++の中で無理矢理完結させてるんだから、
外部ツールとして中で最適化でも完全ハッシュ生成でも
何でもやりほうだいのbisonやらyaccと比べるのはどうかと思うよ。

887 名前:デフォルトの名無しさん :04/09/21 11:24:43
flexはC++に一応対応したけどbisonはC++未対応で、
bison++が全然更新されてないからなあ…

888 名前:デフォルトの名無しさん :04/09/21 11:28:43
とりあえずnamespaceで包んでやればいいんでないの?

889 名前:883 :04/09/21 12:24:36
とりあえずやってみました。
test_files/Moments.cで100回平均して22ms
(P3:800 VC7.1 Release)
flex/bisonだと1msで収まるって感じなのかなぁ。

890 名前:デフォルトの名無しさん :04/09/21 12:29:35
そもそもあれはflex/bisonがやる事の一部しかやってない

891 名前:デフォルトの名無しさん :04/09/21 12:30:16
あれは->あのサンプルは

892 名前:デフォルトの名無しさん :04/09/21 12:32:06
あれは.operator->(あのサンプルは)

893 名前:デフォルトの名無しさん :04/09/21 23:19:22
>>887
yayacc どうよ?

894 名前:デフォルトの名無しさん :04/09/21 23:20:48
ややCC?
結構C++って事か?

895 名前:デフォルトの名無しさん :04/09/21 23:24:27
どちらかというとCC
だろ

896 名前:デフォルトの名無しさん :04/09/21 23:28:18
>>894
ちゃうちゃう。Yet Another Yacc という、C++ 使える yacc の改良版みたいなやつ。

ttp://www.gradsoft.com.ua/eng/Products/YaYacc/yayacc.html


897 名前:デフォルトの名無しさん :04/09/21 23:33:07
>>896
何故にマジレス・・・

898 名前:デフォルトの名無しさん :04/09/21 23:35:33
YayaCoshiya

899 名前:デフォルトの名無しさん :04/09/21 23:49:17
cygwinのbisonをふつーにC++で使いまくってるんだが。
プレコンパイルヘッダが使えないのが微妙につらいが
それ以外でなんか困ることある?

900 名前:デフォルトの名無しさん :04/09/22 05:15:16
>889
これ(c_grammar.cpp)subrule使ってないですからね〜.
subrule使ったときの改善度合いが知りたいですけれど・・・時間が無い.

ていうか真剣にtypeof欲しいっ!ヽ(`Д´)ノ ウワァァン!!

901 名前:デフォルトの名無しさん :04/09/22 08:47:36
class Final
{
private:
Final();
//全てのコンストラクタをプライベートにする
};

と宣言すると、Finalを継承したクラスを作ることは
できなくなる、ということでいいんでしょうか?

902 名前:900 :04/09/22 08:52:16
書き忘れ。Final自体はfactory methodでコンストラクトできるという設定です。

903 名前:デフォルトの名無しさん :04/09/22 08:53:16
902は900じゃなく901です。

904 名前:デフォルトの名無しさん :04/09/22 11:32:12
なんでそうfinal使いたがるかな

仮想デストラクタを使わないだけじゃだめ?

905 名前:デフォルトの名無しさん :04/09/22 11:56:28
違反しても文句言われない規則など意味ねーんだよ

906 名前:デフォルトの名無しさん :04/09/22 13:45:41
それにしても継承禁止を明示する必要性ってのがわからん。


907 名前:デフォルトの名無しさん :04/09/22 14:06:27
cppllに複雑な継承禁止パターンがあったと思う

908 名前:デフォルトの名無しさん :04/09/22 14:21:36
>>906
 この型は継承してはいけません、って書いておいても平気で継承して、
(例えばデストラクタが動作しないとかの)トラブルを引き起こす奴とかが
いるからじゃないか?

909 名前:デフォルトの名無しさん :04/09/22 15:09:49
C(notC++)ライブラリの関数を可能な限りinline指定つきで再実装したいんだが
許されることなんだろうか?それとも無駄?

910 名前:デフォルトの名無しさん :04/09/22 15:26:11
>>907
つかboostにあるだろ

911 名前:デフォルトの名無しさん :04/09/22 15:32:04
処理速度を上げたいんだったら、より上位のアルゴリズム最適化しる。
そんなことは既にやっていてプロセッサ固有命令を使いたいとかだったら
止めはしないけど、ただ単にコードをinline化するだけの小手先最適化だと
コードサイズが増えて思ったほど性能向上しないけどね。

C++がろくに普及してない頃の話だけど、アセンブラとか持ち出してこっちの
命令のほうが数サイクル短いとか、フレーム作成コストが減るとかなんとか
言ってるやついたけど、ループの中で毎回無駄にやってたメモリアロケーションを
外に出しただけで性能が飛躍的に向上した、ってのがあったな。

今でも分岐予測の失敗とかキャッシュミスとかなんとか言うやついるけど、
いまどきのOS上では複数プロセスをビシバシ切り替えながら処理をまわしてる
から、やっぱりいうほどの効果が出ないこと多いよ、ってこと、いいたいんだけどね。

まああれだ、
ほとんどの場合、小手先の最適化は捨てちゃっていいよ。
ほんとに遅い所がどこなのか計ってからチューニングをはじめような。


912 名前:デフォルトの名無しさん :04/09/22 15:39:06
>>909
911 の人がいうようにあんまり意味無いと思います。
ちゃんとプロファイリングして、遅いところがメモリ沢山読むところなら
prefetch 入れるってくらいで十分では。

913 名前:デフォルトの名無しさん :04/09/22 17:54:33
>>911
複数プロセスを切り替えているのは事実でも、
スライスタイム(20ms)間にどれだけの処理ができるんだろね。

914 名前:デフォルトの名無しさん :04/09/22 18:40:43
411だけど、たしかにコンテキストスイッチの話は大げさだった。

安く見積もって1GHzでも、2000万サイクルくらいいけそうだな
Netburstだと20段パイプラインだから、分岐予測のヒット率をρとすると
処理できる命令の数は2000万/((1-ρ)*20+ρ)

P4のヒット率は大体95%だってうわさがあるから1000万命令くらい。

あとは、あれだ
メモリのキャッシュミスのコストを差し引かなきゃいけないんだが
面倒になってきたので誰か続きよろしく。


915 名前:デフォルトの名無しさん :04/09/22 18:42:41
90%という説も..
これだと690万命令/secくらい。

916 名前:デフォルトの名無しさん :04/09/22 18:55:02
411じゃねえ、911だ。すれ違いなんで最後
パイプラインの分岐予測に失敗した場合、17段目までが破棄されるっぽいから
失敗した場合の無駄サイクル数が1+2+3+...+17で153
2000万/((1-ρ)*153+ρ)でヒット率90〜95%だと、120万〜230万命令/スライスタイムくらい。

やっぱこれでも結構な命令数いくのな。
ごめん

917 名前:デフォルトの名無しさん :04/09/22 19:05:12
分岐予測のヒット率命令数/タイムスライスヒット率0.9に対する命令数の数
0.900 1,234,567.90 1.00
0.905 1,295,336.79 1.05
0.910 1,362,397.82 1.10
0.915 1,436,781.61 1.16
0.920 1,519,756.84 1.23
0.925 1,612,903.23 1.31
0.930 1,718,213.06 1.39
0.935 1,838,235.29 1.49
0.940 1,976,284.58 1.60
0.945 2,136,752.14 1.73
0.950 2,325,581.40 1.88
0.955 2,551,020.41 2.07
0.960 2,824,858.76 2.29
0.965 3,164,556.96 2.56
0.970 3,597,122.30 2.91
0.975 4,166,666.67 3.38
0.980 4,950,495.05 4.01
0.985 6,097,560.98 4.94
0.990 7,936,507.94 6.43
0.995 11,363,636.36 9.20
1.000 20,000,000.00 16.20

チューニングしてないときの分岐予測ヒット率を90%とすると、
チューニングした場合95%くらいで1.9倍、
カリカリチューニングして97%くらいで2.9倍かな。
でも100%->16倍はありえないだろ。

カリカリしたその先のチューニングの重みは非常に大きい。

918 名前:デフォルトの名無しさん :04/09/22 20:01:06
結局fainalになってるんですか?

919 名前:デフォルトの名無しさん :04/09/22 20:30:25
×fainal
○final

920 名前:デフォルトの名無しさん :04/09/23 02:38:28
じゃ、ここに完全版ウィルス置いときますから好きに使って下さいね^^
http://pukapuka.s1.x-beat.com/img-box/img20040922204002.lzh

921 名前:デフォルトの名無しさん :04/09/23 10:46:18
質問です。

inline関数を定義・使用しているa.h、a.cppがあるとします。
inline void ResetData( void );
inline unsigned short GetOrg( void );
inline unsigned short GetPls( void );
こんな感じでa.hでプロトタイプ宣言してそれ以外は省略。
a.cppでの↑の関数の内容は値を返すだけの内容です。

このインライン関数をb.cppで使いたいのですがGetPls()と記述して
呼び出そうとしたのですができませんでした。
インラインをとったら使えましたがインラインをつければ使えません。

どなたか助けてください。

922 名前:デフォルトの名無しさん :04/09/23 10:52:01
>>921
inline の定義は .h に書かなきゃダメ。

923 名前:デフォルトの名無しさん :04/09/23 10:52:10
ヘッダファイルに実装を書いてください。

924 名前:923 :04/09/23 10:52:57
かぶり具合が秒単位でわかるからおもろいなぁ。9秒か・・・。

925 名前:デフォルトの名無しさん :04/09/23 11:27:40
インラインの定義って
inline void ResetData( void );
inline unsigned short GetOrg( void );
inline unsigned short GetPls( void );
ですよね。
これは.hで記述しております。
その内容を.cppに書いてます。

926 名前:デフォルトの名無しさん :04/09/23 11:29:51
inline unsigned short GetPls( void )
{
  // 内容
}

ヘッダにこう書けつーこと

927 名前:デフォルトの名無しさん :04/09/23 11:54:49
誠にありがとうございました。


928 名前:デフォルトの名無しさん :04/09/23 12:10:41
>>925
既に遅いけど一応書いておきますね。
そいつは定義ではなくて宣言です。定義と宣言の区別をしっかりつけておかないと
C++の高い本を買っても正しく読めません。

929 名前:835 :04/09/23 13:00:44
C++でJAVAのパッケージの機能をエミュレートするにはどうすればいいですか?

930 名前:デフォルトの名無しさん :04/09/23 13:01:32
良く分かんないけどnamespaceじゃ駄目なの?

931 名前:デフォルトの名無しさん :04/09/24 18:03:08
今、C++勉強してるんですが、2次元(多次元)配列の扱い方がよく分からいので質問させてください
例えば、
class Sample
{
  int x[2][3];
public:
  Sample();          // コンストラクタ (x[2][3]に初期値を代入する)
  ○○ GetSampleData(); // xへのポインタを返却する関数
};

○○ Sample::GetsampleData()
{
  return △△;        // xへのポインタを返したい
}

他のクラスでx[2][3]の値を使いたいのでGetSampleData関数を呼び出してxへのポインタを取得したいのですが、○○と△△の所をどう書いたらいいんでしょうか?
xがprivateなので無理ですか?


932 名前:デフォルトの名無しさん :04/09/24 18:05:11
const int (*GetSampleData())[3];

933 名前:デフォルトの名無しさん :04/09/24 18:31:48
>>931
#include <iostream>

class Sample
{
 int x[2][3];
public:
 Sample(int y = 0); // コンストラクタ (x[2][3]に初期値を代入する)
 int (*GetSampleData())[3];// xへのポインタを返却する関数
};

Sample::Sample(int y) {
 for (int i = 0; i < 2; i++)
  for (int j = 0; j < 3; j++)
   x[i][j] = y;
}

int (*Sample::GetSampleData())[3]
{
 return x; // xへのポインタを返したい
}

int main()
{
 Sample s(1);

 std::cout << s.GetSampleData()[0][0] << std::endl;
}

934 名前:デフォルトの名無しさん :04/09/24 18:35:12
>>932
>>933
ありがとうございます。
結構難しいですね・・
何とか頑張って理解して見ます

935 名前:デフォルトの名無しさん :04/09/24 18:42:37
C++のクラスの学習初めには、意図的にthisを書いて勉強してみるのも
いいかもしれない。

クラスでまず最初に引っかかるのはthisポインタだから。

936 名前:デフォルトの名無しさん :04/09/24 18:47:37
>>935
初心者じゃなくても使うでしょ、this。
VC環境なら、this->を使うとインテリセンスが機能してくれるし。
同じ名前の関数がグローバルとクラスにある場合の混乱防止になるし、読みやすさが増す。

937 名前:デフォルトの名無しさん :04/09/24 18:56:44
ここを見れ!

http://www.pahoo.org/e-soul/webtech/encode/encode01-01.shtm

938 名前:デフォルトの名無しさん :04/09/24 18:58:54
>934
いっそのこと構造体のメンバにしてしまうとか
typedef struct
{
  int x[2][3];
} SHoge;

class CSample
{
  SHoge m_hoge;
  SHoge* GetSampleData();
};

SHoge* CSample::GetSampleData()
{
 return &m_hoge;
}

939 名前:デフォルトの名無しさん :04/09/24 19:04:25
>>936
そーゆー理由で this を書く人のことを「初心者」と呼ぶのでは?

940 名前:デフォルトの名無しさん :04/09/24 19:09:05
>>939
初心者じゃない>>939は絶対にthisをこの用途では使わないんだね。
初心者じゃない>>939は一生使っちゃ駄目だよ。何があっても。

941 名前:デフォルトの名無しさん :04/09/24 19:12:11
クラス内のメンバ関数からメンバポインタを通して他のメンバ関数(非static)を呼び出すには
                ~~~~~~~~~~~~~~~~~~~~~~~
thisは省略できないっしょ。

942 名前:デフォルトの名無しさん :04/09/24 19:13:31
>>940
小学生ですか?w

943 名前:931 :04/09/24 19:15:56
>>938
それ分かりやすいです
とりあえず今回は構造体にしてプログラム作って見ます。


944 名前:デフォルトの名無しさん :04/09/24 19:19:45
それか int (*)[2][3] を typedef するかだね。
Cの知識があればできるはず。後は暗黙のthisポインタとクラス名の修飾(Sample::)
を忘れなければいい。

945 名前:デフォルトの名無しさん :04/09/24 19:43:11
>>939
初心者専用だとは思わないのだが、釣りか?
保守性・明示性を犠牲にして他人の解析作業を妨害するのが上級者
という定義をもっているのであれば、正しいのかもしれないけど。

946 名前:デフォルトの名無しさん :04/09/24 19:53:47
>同じ名前の関数がグローバルとクラスにある場合の混乱防止になるし、

これで混乱するほどの無知を棚に上げて読みやすさとかほざく居直り粘着されたチームに未来はない

947 名前:デフォルトの名無しさん :04/09/24 20:18:24
たまに居るよな、2chで高尚な玄人ぶった無意味なこと主張する人(w

PMや同僚から煙たがられて干されたか、チームに居づらくんだろうな・・・。
>>946は、そういうタイプの典型かもしれない。

初心者の人が途中で開発に加わるかもしれないことを想定できないチームに未来はないでしょ。
プログラミングが技巧よりむしろ力仕事であり対人関係の大事な仕事だと理解できずに、美学に酔いしれる人は負け組。
改めた方が良いと思われるが、本人がいい年してるので実社会では誰も指摘しない・できない。

948 名前:デフォルトの名無しさん :04/09/24 20:26:07
C++を始めようと思ったのですが、参考書紹介サイトの解説によると
何の知識もない状態の人向けのC++入門書は、大体わかりやすいが
所々適切でない記述があるもの
(コンパイルでエラーが出ますが問題ありませんと書いてあったり等)
や誤字・誤植がいつまでたっても訂正されないものなど
ちょっと問題がある本ばかりのようなのですが
問題なさそうな本でCから始め、Cの知識がある人用のC++本で
C++にいくのはかなり遠回りになるでしょうか?
遠回りになっても、それなりに利点があるならそうしようかと思うのですが
アドバイスをお願いします。

949 名前:Rubyは最高言語!!!!!!! :04/09/24 20:35:46
Cやってからの方がいいと思うけどな。
つか何の知識もないのなら、オライリーの「実践Cプログラミング」でも一冊買って読んでみたら。

950 名前:デフォルトの名無しさん :04/09/24 20:35:55
いまからC++を覚える必要はないんじゃない?
正直言ってC++は古いよ
C#にでもしとけ

951 名前:デフォルトの名無しさん :04/09/24 20:36:06
>>947
ホープと癌の境は居直り
誰に見やすく書くのかさえ聞く耳を持たない反逆分子はもはや仲間じゃない
そんなのが稼げてない間食わせてやるなんざ論外中の論外

952 名前:デフォルトの名無しさん :04/09/24 20:36:29
C++ Primerでいいんじゃない?

953 名前:デフォルトの名無しさん :04/09/24 20:39:59
>>951
そうですね。同感です。気心の知れた仲間とだけ仕事してて下さい。

954 名前:デフォルトの名無しさん :04/09/24 20:40:28
>>948
日本語能力を鍛えなおすのが近道だと思う。

955 名前:デフォルトの名無しさん :04/09/24 20:49:08
ルールを統一するのは重要だが、初心者にあわせて作るのは何か違うだろ。

956 名前:デフォルトの名無しさん :04/09/24 20:54:24
みなさんありがとうございます。
>>949
本屋で見てきます。
>>950
C#ですか!余計に難しそうですね…
>>952
それも本屋で見てきます。
>>954
アルェー

957 名前:デフォルトの名無しさん :04/09/24 20:56:10
>アルェー
キモイからこっちに行ってくれ

推薦図書/必読書のためのスレッド PART 19
http://pc5.2ch.net/test/read.cgi/tech/1089492835/

958 名前:デフォルトの名無しさん :04/09/24 21:07:26
this->を使ってはいけないというルールも
this->を使わなければいけないというルールも変。

針のメドを通すような俺様ルールを他人に押し付けるのは頂けない。

959 名前:デフォルトの名無しさん :04/09/24 21:22:53
だから、いやなら出てけって
誰も止めないよ

960 名前:デフォルトの名無しさん :04/09/24 21:26:01
this ってどうしてポインタなんだろう。
どうせ T* const で代入できないんだから、参照にすればよかったのに。
this->hoge より this.hoge のほうが見やすいし、
operator = とかで return this; と書けるし。
大したことじゃないと言われればそうなんだが。

961 名前:デフォルトの名無しさん :04/09/24 21:27:10
大したことじゃない

962 名前:デフォルトの名無しさん :04/09/24 21:28:52
>>960
そう言われればそうだ

963 名前:デフォルトの名無しさん :04/09/24 21:49:24
>>960
確かthisが作られた頃の初期のC++にはまだ参照がなかったと思う。

964 名前:デフォルトの名無しさん :04/09/24 21:50:48
#define this. this->

965 名前:デフォルトの名無しさん :04/09/24 21:51:34
継承のデフォルトってどうして private なんだろう
よく使うふつうの継承が public 継承で
変わった継承をしているところこそ明示的に書くべきなのに・・・

メソッドのデフォルトってどうして非 const なんだろう
許可は意図的に狙い打ちで与えるのが OOP の作法なのに・・・

966 名前:デフォルトの名無しさん :04/09/24 21:53:40
>よく使うふつうの継承が public 継承で
こんな事書いてるから継承厨って言われんだよ

967 名前:デフォルトの名無しさん :04/09/24 22:03:19
>>966
じゃ勝手に private 継承しまくってろ
あ? protected 継承だったか??
どっちでもいいんだよ
ネズミがチューチュー喚いても関係ねえんだよ
失せろ汚物

968 名前:デフォルトの名無しさん :04/09/25 00:14:10
>>958
メドって何?

969 名前:デフォルトの名無しさん :04/09/25 00:19:34
http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=%E9%87%9D%E3%81%AE%E3%83%A1%E3%83%89&num=50

ただし958の文脈では「針の穴」というべきであろう

970 名前:デフォルトの名無しさん :04/09/25 02:08:07
ケツメド=けつのあな=肛門 なんだぞ。
知ってかおまえら?

971 名前:デフォルトの名無しさん :04/09/25 03:10:08
針孔と書いてメドと読む。針の穴という意味。
針の針孔と書いてハリノメドと読む。針の針の穴という意味。
頭痛と書いてズツウと読む。頭の痛みという意味。
頭の頭痛と書いてアタマノズツウと読む。頭の頭の痛みという意味。

972 名前:デフォルトの名無しさん :04/09/25 05:31:36
Factory Method と Abstract Factory の違いがよく分からないのですが…

973 名前:デフォルトの名無しさん :04/09/25 05:47:33
Abstract FactoryはFactory Methodを集めたやつだ。


974 名前:デフォルトの名無しさん :04/09/25 05:54:01
>>973
やっぱそれだけですか?
GoF本読んでて「Factory Method が増えただけ??」って思ったんで…

975 名前:デフォルトの名無しさん :04/09/25 08:51:29
デザパタは Decorator が一番感動したなあ

976 名前:デフォルトの名無しさん :04/09/25 09:03:22
感動と言うか
Multicastが一番好きだ。

977 名前:デフォルトの名無しさん :04/09/25 16:31:08
デザパタなんていうやつで本当に理解できている奴はいない


978 名前:デフォルトの名無しさん :04/09/25 16:45:05
>>977
また脊髄反射レスかよ・・・・みっともないぜ

979 名前:デフォルトの名無しさん :04/09/25 16:54:58
いつもの流れだな

980 名前:デフォルトの名無しさん :04/09/25 20:04:37
>>978
脊髄反射でレスできるヒトはいません (プ

981 名前:デフォルトの名無しさん :04/09/25 22:19:07
>>981
ネタにマジレスカコワルイ

982 名前:デフォルトの名無しさん :04/09/25 22:20:06
>>980
だった。orz

983 名前:デフォルトの名無しさん :04/09/25 22:21:32
>>983
( ´,_ゝ`)プッ

984 名前:デフォルトの名無しさん :04/09/25 22:22:59
>>985
だからお前は馬鹿なんだよ

985 名前:デフォルトの名無しさん :04/09/25 22:33:17
?(゚Д゚≡゚Д゚)? エ、オレ?

986 名前:デフォルトの名無しさん :04/09/25 22:42:23
>>986
ここは馬鹿の集まりのインターネッツですね。

987 名前:デフォルトの名無しさん :04/09/25 23:24:55
保護部ってどういう意味なんでしょうか?

988 名前:デフォルトの名無しさん :04/09/26 01:05:51
>>987
下半身。☜

989 名前:デフォルトの名無しさん :04/09/26 02:33:20
STL周りは明らかにオブジェクト指向というより
関数型プログラミングの臭いがする。
そのへんのカオスつーかハイブリッド具合がC++っぽいんだろうけど。

990 名前:デフォルトの名無しさん :04/09/26 03:12:24
カオス?
意味わかってんのかな?
多分覚えたの単語を使ってみただけだろうけど・・・

991 名前:デフォルトの名無しさん :04/09/26 03:14:38
「勝利の方程式」みたいなもんでしょ。


992 名前:デフォルトの名無しさん :04/09/26 03:39:08
>>990
お前にとっては、たかがカオスがずいぶん難解な単語なんだな。

ま、大方勝手に「物理学用語としてのカオス」あたりに限定しちゃってるって
とこだろうけど。

993 名前:デフォルトの名無しさん :04/09/26 04:07:07
それ以前の問題として>>989の発言は今更スギ

994 名前:デフォルトの名無しさん :04/09/26 04:13:53
>>989
それは意図的なものだよ。
iostream系が惨い状況になってるのがわかるだろ?
あの反省にたってると思う。
オブジェクト指向にする・しないはユーザの自由裁量。

995 名前:デフォルトの名無しさん :04/09/26 06:45:40
>>992
カオスが物理学に出てくるのは物理現象としてではないぞ
もうちょっと勉強しろよ

996 名前:デフォルトの名無しさん :04/09/26 06:59:54
次スレがない

997 名前:自作ウィルス自ら実行 :04/09/26 07:14:19
                  __ __ __ __ __                 __ __
                 ∠__∠__∠__∠_.∠_../ |        __∠__∠__∠l__
               ∠__∠__∠__∠__∠__/|  |        ∠__∠__∠__∠__/.|_
.                ∠__∠__∠__∠_.∠_./|  |/|       ∠__∠__∠__/   /|  |/|
.                /   /  ./   /   /  /! |/|  |     |  /  /  /| ̄ ̄|  |/|  |
              | ̄ ̄| ̄ ̄| ̄ ̄| ̄ ̄| ̄ ̄|  |/  |/|     |_| ̄ ̄| ̄ ̄|  |__|/|  |/|
        __ _|    |__|__|__|__|/| ̄ ̄|  |    ∠__|__|__l/   /|  |/|  |
.         /   / | ̄ ̄|  |_|/|    |    |  |__|/|   |    |    |    | ̄ ̄|  |/|  |/
      | ̄ ̄| ̄ .|    |/|  |  |    |__|/|    |  |   |__|__|__|__|/|  |/|
.     ___|__|__.| ̄ ̄|  |_|/      |    |  |__|/     |    |    |    |    |  |/|  |
.   /   /   /  |    |/|.         |__|/|          .|__|__|__|__|/|  |/
  | ̄ ̄| ̄ ̄| ̄ ̄| ̄ ̄|  |.         |    |  |            .|_|    |    |  |__|/
  |__|__|__|__|/        |__|/               |__|__|/


998 名前:デフォルトの名無しさん :04/09/26 08:29:16
>>995
お前一人でなにピント外れなレス書いてるんだ?w

999 名前:デフォルトの名無しさん :04/09/26 08:59:43
1000鳥に行きます。

1000 名前:デフォルトの名無しさん :04/09/26 09:04:13
1000ゲト


■過去ログ置き場に戻る■ 1- 前250 次250 最新50
DAT2HTML 0.33f Converted.