C++って使わないの??

このエントリーをはてなブックマークに追加
924名無しさん@お腹いっぱい。:04/03/17 00:01
なるほど。確かにそうかも。
>>919
代入が終わってから加算されるので、増えない。
に一票
926名無しさん@お腹いっぱい。:04/03/17 01:09
「C++ をマトモに使う」ってどういうことかな。
template は魅力的だけど C++ の OOP なんてキモチワルイ
だけで便利な構造体以上の使い方する気しないんですけど。
//こんなコメントの書き方に憧れた。
//これだけの為にC++はじめた。
//結局その他の機能は手つかず。
//仕事は未だにアセンブラばかりなのでどうでもいいのだが。
>>926
C++のOOPが気持ち悪いなら自分なりのOOPを書けばいいだけなんだけど

C++は無駄な機能はたくさんあるけど、足りない機能はほとんどないでしょ
動的にいろいろいじる機能がない気がするけど。
動的な関数生成とか。
>>928
あとジャグ配列あれば文句ない。
まぁクラス自分で作ればいいんだけどね。
>>929
そんなのCにだってないじゃん。
C++はあくまでCの路線には忠実なんだよ。それがいいところ。
>>931
でも、そこがOOしてないと言われちゃうところなんじゃないの?
動的にいろいろいじれてこそのOOだと思う人も多いわけだし。

まあ、動的にいろいろすると、デバグはしにくくなってしょうが
ないからヲレは嫌いなんだけどね…
>>929
飛躍しすぎだろ、アホ
気持ち悪くない Object System 作るのは、もうちょっと動的な機能がないと厳しいと思う。
多機能な C として使うぶんにはいいけど。
C++に限らず、ネイティブコードに落とすコンパイラで実現してる環境があるのかね?
「C++インタープリタ」でも探したら?

どうしてもやりたければ
Javaみたいに中間言語にするか
スクリプトエンジンでも作るんだね。
JITまで実装すれば速度的なデメリットも緩和されるでしょ。
俺には不可能だし、そもそも「C/C++」にそんな機能が欲しいとも思わないけどね。
>>935
物知らずというのは強いねえ。
D言語のDはDQNのD
動的な機能ってOOPと関係あんの?
未だにSmalltalkだけがOOPだと信じてる人にとっては
関係あるんじゃない?
>>935
> C++に限らず、ネイティブコードに落とすコンパイラで実現してる環境があるのかね?

Lisp 系とか関数型とかの言語には特に重要な機能だから、そっちの処理系では大体実装されてると思う。

Common Lisp だと CMUCL とか SBCL が直接 native code に落とすね。
Scheme だと Bigloo とか Chicken とか、一度 C に変換するのが多い。
ML だと OCaml とかが native code 吐くみたい。
などなど。


>>938
OOP って根本的に動的なものだと思うけど。
問題を Object の関わりとして記述する。
関わりの中で、「Object」も「関わり」も、いろいろ変化を続けていく。
その変化の先に、求める答えが現れるようにするのが OOP でしょ。

で。
変化の中で、使いたい method が変わってくることもある。
でも、 method が動的に生成できないと、使いたくなるかもしれない method を、予め全部作っとかなきゃいけない。
極端に大規模な State Pattern とか Strategy Pattern を template と組み合わせて…みたいな。
そういう OOP は可能かもしれないけど、私は「気持ち悪い」。


>>939
Smalltalk「だけ」とは思わないけど…
C++ で手が届く範囲だけだと、ちょっと狭いと思う。
Lispのコンパイラって?
すまん。
動的に作成したmethodをどうやってnative実行してるの?
バリバリに実行環境に依存したコードだよね?ネイティブコードって。
複数プロセッサ(ネットワーク上)や異機種間の動作(RMI相当)とかは無視していいのかな。
>>931
実行時の動的関数生成は C++ の設計思想と相反するから要らんけど、
無名関数は書けるようになって欲しい。STL の algorithm とか使い
出すと、

o 関数オブジェクトをグローバルに定義する
o mem_fun とかを駆使して関数オブジェクトを作る
o boost::lambda 使う

どれかの選択を迫られる。後者二つは C++ 標準の記法とかけ離れる
ことがしばしばで、ちょっと辛い。
Javaの無名クラスも。あれはよいものだ。
>>942
ごめん、内部はよく知らない。
# 見てみたけど、解析できなかった…
>>942
組み込み(Javaで言うところのnative)関数の扱いと一緒だよ。
Dynamic linkするだけ。

GNU Common LispだとCのコードに変換してから、
コンパイルして.oにして、サイズが分かったら、
その分malloc(3)して、置くべきアドレスが分かったから、
ldしなおして、loadしてくる。
後はsymbolのsymbol-functionのところにcompile済flag立てて、
アドレスを書き込むだけ。

もちろん環境が違ったら持ち運べないね。コンパイル済コードは。
クロージャがほしいー
クロージャって関数ポインタだろ?
そんな旧世代のC言語チックな機能捨てろよ。
まともなC++プログラマは関数オブジェクトを使う。
最適化だって関数ポインタ使うより効きやすい。
ハーバートシルトの独修C++にもそう書いてある。
まぁ947はろくにコード書いたこともないDQN私立大学の学生か(宿題なのか?ワラ)、
ソートも知らない高卒COBOLerだろ。
演算子オーバーロードなんていっても分からないだろうな(ワラ
..    |
..    |
    J
.soからクラスをロードしたり
それを別の言語から使ったりする機構はunixにはないの?
>>950
こういうことを言っているのか?
「.soからクラスをロードしたり」というのは。
http://www.tldp.org/HOWTO/C++-dlopen/
>>948
> クロージャって関数ポインタだろ?
lisp 屋に聞いてみな?
笑い飛ばされるだけだから。。。
環境も含まれますね。
954名無しさん@お腹いっぱい。:04/09/30 19:34:59
そうやって俺をイラつかせて、何をしたいんだ。
俺に恨みでもあるのか。それとも人をからかうのが好きなのか。
どちらにしても、お前は悪意をもって人を傷つけようとした。
こういう事はこれで最後にしろ。
ここ良スレでつね。
ところで、JavaからC++に移行ってスムースに出来るもんなのでしょうか?
C→Javaより簡単。C++→Javaよりは大変。
UNIXだとCの力も借りないと何もできないけど。
_button1.signal_clicked ().connect (SigC::slot (*this, &Unko::on_button1_clicked));

なんかこういうの見ると微妙に鬱
958名無しさん@お腹いっぱい。:04/10/07 19:23:33
C熟練者がCを使えばCは最高の言語と成り得る
非C熟練者がCを使えばCは最高の糞言語と成り得る
C++熟練者がC++を使えばC++は最高の言語と成り得る
非C++熟練者がC++を使えばC++は最高の糞言語と成り得る
959名無しさん@お腹いっぱい。:04/10/08 21:01:02
>958
ビヨルンの野郎がC++で実装したC++の機能は糞としか思えないのだが
delegateがないのは糞杉
C++を愛してます
使い慣れないC++でkqueueラッパーを書いてみましたが、途中で訳わかめになりました。
だれか修正してくれませんか?
963名無しさん@お腹いっぱい。:05/03/03 23:29:20
尾は名をあげま(´・ω・`)ショボーン簿利に
964名無しさん@お腹いっぱい。:UNIX時間(+0900)35年,2005/04/02(土) 21:03:50
ぜったいいや >>962
965名無しさん@お腹いっぱい。:UNIX時間(+0900)35年,2005/04/02(土) 21:31:30
カーネルドライバとかC++で書けねえじゃん。
966名無しさん@お腹いっぱい。:UNIX時間(+0900)35年,2005/04/03(日) 01:10:49
967名無しさん@お腹いっぱい。:2005/04/04(月) 10:18:03
>>965
そうだね。Cいらないっていってるやつってよくわからん。
単なる若人だと思う。
>>967
そうとも限らんのだよ。開発効率を上げられるってどっかのコンサルに吹き込まれて
C++だのJavaだのC#に移行しようとして失敗&利益がた落ちなんてのは山ほどあるわけで…
ま、オブジェクト指向なんてのは10年前に済ませておくべき「奇形的」なアイデアだったわけで、
はしかみたいなもんだな。今は、オブジェクト指向をどうやって乗り越えるか?が真の課題のはずなんだが・・・
969名無しさん@お腹いっぱい。:2005/04/07(木) 04:37:49
C++は作った本人しか分からんからやだ
cの方が分かりやすい
970名無しさん@お腹いっぱい。:2005/04/07(木) 12:18:08
>>969 Cしか読めないオマエにとってはな。
971名無しさん@お腹いっぱい。:2005/04/07(木) 16:08:17
Cで書いたって結局はC++っぽくなってしまう、
それなら最初からC++で書いたほうが楽。
972名無しさん@お腹いっぱい。:2005/04/07(木) 21:43:29
>>969
作った本人も気を抜くと忘れてしまいそうなトリッキーなルールが
一杯ある C++ はいとおしい存在だよ。
>>971
Linux のカーネルなんて結構そういうノリだよね。

C を使ってる現場でも function pointer なんか使ってくると、
C++ で書けねーものかなんてね。
973sakurai osamu
http://www.club-paruparo.com/

フィリピン万個伝説よろ

windows 最高!

C++だぁー??

uzeeeeeeeeeyo tako!!

俺のようにフィリピンオ万個なめろ!