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


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

【肥大化】C++ を見捨てたヤシ【複雑化】



1 名前:デフォルトの名無しさん mailto:sage [2008/01/29(火) 09:52:47 ]
文法面での機能拡張しすぎ。
C++の構文解析とか、もうワケワカメ。
マイクロソフト拡張大杉。
gcnew とか使うぐらいなら素直に Java でも C# でもつかえ!!!



545 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 20:10:23 ]
C++ がもう少しまともな言語だったら良かったのにとつくづく思うよ。

546 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 20:11:17 ]
javaとc#にデストラクタは無いよ。
ファイナライズは事実上別物。
ただし、そこを補完するため、

javaはtry-finally、c#はusingが用意されてる。

547 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 20:14:23 ]
>>545
具体的に書こうぜ。
ただ「駄目」とだけ書くのは誰でも出来る。

548 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 20:26:23 ]
>>545
誰かが(いずれかの言語が)やってみなきゃならなかったことを
やる役だっただけさ。

549 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:02:21 ]
>そこを補完するため、

足りなかったんですね。

550 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:02:48 ]
>>546
なんで無用なものに対して「補完」する必要があるの?
無用なら全く無くしちゃってもいいじゃん。

551 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:10:53 ]
>>549
はい、足りなかったんです。
GCでメモリは回収出来ますが、リソースは無理でした。

>>550
え?なんで無用なの?
ファイルとか閉じれないとヤバいでしょ?

552 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:13:23 ]
>>546の途中の改行はミスだから気にしないでね。
文は繋がってるよ。

553 名前:デフォルトの名無しさん [2008/05/01(木) 21:29:39 ]
だからWindowsが糞な実装だから必要になってるだけで、まともな実装では
必要ないだろが。
お前ちゃんとLinux使ってから発言しろよ。
Linuxも使えない雑魚が。



554 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:31:01 ]
>>524

MSC7.0/VC1.0発売は1992年で、結構早い時期に登場したC++コンパイラ、
C++がISO認証されたのはもっと後

555 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:36:17 ]
>>553
なぁ、>>515読んでもOSが関係無いってことが分からないか?

それとお前以外がLinux使えないって思い込んでるけど、それも間違い。

556 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:37:22 ]
BSD派だからペンギンは使え(わ)ない。

557 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:42:06 ]
コンストラクタとデストラクタでログ吐くモジュールとか
破棄時に遅延評価を行うプロキシクラスとか
デストラクタなしでどうすんの?

ファイナライザでやれ、つうのは名前変えてるだけで同じだね。

あ、もしかして
デストラクタ(ファイナライザ)の有用性は認めるが
そこに資源破棄の役割を持たせる必要は無い、という主張なのかな?
一考には価するかも。

558 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:42:14 ]
>>553
それと、まさか勘違いはしてないだろうけど、
こっちはデストラクタが無いとプログラム組めないとか
そういう主張はしてないからな。

ガベージコレクタ無くても組めるのと同様。

559 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:43:11 ]
OS関係ないだろ
寧ろ基幹鯖とかで致命的

560 名前:558 mailto:sage [2008/05/01(木) 21:43:44 ]
555=558

561 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:47:47 ]
mallocやnewで借りたものは
Win9xですら終了時にプロセス空間ごと更地になるわけで…
いつのwindowsの話かと

562 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:50:19 ]
結局デストラクタは無くても良いという事で全員の意見が一致したなw

563 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:51:58 ]
プロセス終了までリソースを解放しない人は誰ですか?



564 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:53:23 ]
しかし何でWindowsとLinuxを比べてるんだろうか

言語の違いで言うなら、GCのある言語ではデストラクタがほぼ空になるから
GCの無いC++を批判する気持ちは分かるんだが…

565 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:54:33 ]
反論出来なくなったら勝利宣言とは・・・。
釣りじゃなかったら、すごい哀れだな・・・。

566 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:57:53 ]
あれあれ、まだデストラクタが無いとプログラム組めない人が居たのかな?

567 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:59:51 ]
しおり
>>480-566

568 名前:デフォルトの名無しさん [2008/05/01(木) 22:00:15 ]
オブジェクト指向にデストラクタが本当に必要か考えてみるがいい。
Windows使ってると頭おかしくなるのか?
なんでここまで説明してやらないとわからないんだろう?

569 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:05:20 ]
オマエより頭が良くて偉い人が必要だと判断したからな

570 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:05:45 ]
for文て何のためにあるの?
while文で十分じゃん

571 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:07:11 ]
いや、末尾再帰の最適化があればそれで十分だ

572 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:08:03 ]
何故OSが関係無いことを理解出来ないのかが分からない・・・。

シックスセンスじゃないけど、
見たいレスしか見えないんだろうか。

573 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:09:38 ]
デストラクタといえばDのscope(…)文が羨ましい



574 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:11:11 ]
>>570
いやいや。Goto文かJump命令で事足りるぞ

575 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:13:28 ]
asmキーワードでイナフ。

576 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:13:33 ]
>>568
何も説明してないし。


577 名前:デフォルトの名無しさん [2008/05/01(木) 22:13:34 ]
>>572
だからLinuxなら全然問題なく完璧にできるっつってるだろ。
なんでわかんねんだ。
これだからM$信者は駄目なんだよ。

578 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:14:02 ]
>>504
それMFC固有のことで、Windowsは関係ない。

579 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:18:46 ]
UNIXでもLinuxでもWindowsでも、CやJavaで問題無くソフトウェアは作れるけど、
メモリリークしていい理由にも、C++にデストラクタが不要だという理由にもならない。

580 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:19:52 ]
>>577
mallocしたメモリやopenで得たファイルディスクプリタが
プロセス終了時にOSが解放したり閉じたりしてくれるということを言っているなら、
Linux/Unixプログラマだって、OSに任せないで
自分で呼んだりデストラクタに任せる奴は当たり前のように存在する。

581 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:21:11 ]
デストラクタをメモリ管理にだけ使っていて、
デストラクタを使わないとメモリリークが止まらない
プログラマが居るだけだお!

582 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:21:29 ]
>>577
mallocで10bytr確保したとしよう。どうやってそれを開放するのか教えてくれるかな。

583 名前:デフォルトの名無しさん [2008/05/01(木) 22:22:54 ]
>>582
そんなことも知らないのか。
M$信者は達者なの口だけだな。



584 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:27:23 ]
教えて!


585 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:28:39 ]
さつき先生!!

586 名前:デフォルトの名無しさん [2008/05/01(木) 22:28:52 ]
多分free()とかOSが解放してくれるとか言うんだろうな

587 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:36:44 ]
デストラクタ無しだと例外処理とかどうするんだ

588 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:37:01 ]
そこは『OOM Killer が根こそぎ回収する』だろ

589 名前:デフォルトの名無しさん [2008/05/01(木) 22:38:26 ]
お前らはカーネルのソース読むとこから始めたほうがいい。

590 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:38:58 ]
C に例外処理なんて無いし要らん

591 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:50:01 ]
110レスか…

592 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:52:35 ]
もう終わりか…

593 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:56:10 ]
結構皆頑張って説明したけど、全然話が通じなかったな。
久々に真性というものを見た・・・。



594 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:56:34 ]
まだやってんのかよ…

595 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 23:17:04 ]
まとめ。

>>482 降臨 「デストラクタなんて要らない」
>>491 「文字列如きでリークさせる奴なんかいない」
>>498 「Windowsがおかしい、Linuxでリークしたことない」
>>500 「むしろWindowsとの互換性のためにデストラクタがある」
>>518 「Windowsがへぼいからデストラクタが必要になるだけ」
    「Windowsを使ってはいけないという結論が出てる。」
>>527 C++ユーザーは皆、デストラクタが無いと文字列操作も出来ない
>>533 「デストラクタが無いと何も出来ないんだな」
>>553 「Windowsが糞な実装だから必要になってるだけ」
    「Linuxも使えない雑魚が。」
>>562 突如、勝利宣言
    「結局デストラクタは無くても良いという事で全員の意見が一致したなw」
>>566 「デストラクタが無いとプログラム組めない人が居たのかな?」
>>568 「オブジェクト指向にデストラクタが本当に必要か考えてみるがいい。」
    「Windows使ってると頭おかしくなるのか?」
    「なんでここまで説明してやらないとわからないんだろう?」
>>577 「だからLinuxなら全然問題なく完璧にできるっつってるだろ。」
    「これだからM$信者は駄目なんだよ。」
>>583 「そんなことも知らないのか。M$信者は達者なの口だけだな。」
>>589 「お前らはカーネルのソース読むとこから始めたほうがいい。」

IDが無いので完全な抽出は不可能でした。

596 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 23:18:04 ]
>>482氏の主張(想像)
 ・Windowsだとリークする
 ・Linuxだとリークしない
 ・プロセス終了時にOSが解放するから、解放は不要
 ※ 長時間稼動するソフトウェアについては返答無し

597 名前:482 mailto:sage [2008/05/01(木) 23:29:46 ]
一応言っておくが Linux 云々は俺じゃないぞ。茶々入れはしたが…
中身の無い煽り合いに熱を上げるのも楽しいかもしれんが、程々にね。

598 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 23:34:01 ]
ということは、Linux云々の人はデストラクタ関係無しに
「OSが解放するから、解放は不要」とだけ主張していたのだろうか。

599 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 23:34:42 ]
スルーされたレス
>>515
>>524
>>526
>>542
>>559
>>561
>>563
>>564
>>576
>>579
>>580
>>582-584

見当違いな返答が来たレス
>>519-521

600 名前:デフォルトの名無しさん [2008/05/01(木) 23:39:15 ]
そのスルー力は見習うべき・・・でもないなw

601 名前:デフォルトの名無しさん [2008/05/02(金) 00:42:15 ]
取り敢えず>>482が、オブジェクト指向と、C++を理解してないのは判った
ついでに、RubyかJAVAを判ったつもりでいることも判った


602 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 00:53:03 ]
彼と一緒に仕事するわけでもないんだしほっとけよ。

603 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 01:15:00 ]
鯖毎(同じ鯖なら同じID)じゃなくてスレ毎でもいいからID欲しいな・・・。
騙り・自演防止とかじゃなくて、単純に議論or雑談での識別子として。

どのレスが同じ人のか分からないと、相手の考えも読み取り辛い。



604 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 01:33:52 ]
例外がからんでくると RAII のイディオムなしで
(エラー処理込みの)正しいプログラムを書くのは
現実的にほとんど無理

あとこんな馬鹿のせいでLinuxが悪く思われるのは悲しいなあと思った


605 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 02:14:34 ]
大丈夫だ
彼が馬鹿だからと言ってUNIX系が悪いなんて誰も思っちゃいない

606 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 02:54:20 ]
C++の話がなんでOSの話になるんだろうか。


607 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 03:37:55 ]
まぁ各種リソースに関しては
言語で組んでる側でポカやっても確実に対処してほしいところではあるな。

608 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 05:15:48 ]
凄腕の釣り氏だったようだな

609 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 07:13:37 ]
何だこの伸びは?
Windowsもプロセスの終了時にリソースは開放されるよ。
ハンドルリストにあるのがそのプロセスしか使用してなければ、
ハンドルの対象のリソースは開放される。

610 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 09:40:13 ]
3.1とか想定してるんじゃないの?

611 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 12:06:38 ]
プロセス終了では、プロセス内で立てた別スレッドは解放されなかったような。
スレッドが握ってるリソースも解放されない。

612 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 12:10:02 ]
プロセスを終了したら、そのプロセスはなくなるのに、どうやってプロセス内のスレッドが生き延びるっていうんだ

613 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 12:16:51 ]
>>611
スレッドは即死するからデストラクタは呼ばれない。でもシステムのリソースは開放される



614 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 12:17:12 ]
もしかして彼は
コンストラクタ・デストラクタは使わず
ぜんぶ子プロセスを作ってOSに資源管理させろという主張だったのでは…

615 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 12:20:18 ]
>>614
そして、書き込んだファイルの後ろが切れるOSは糞って切れるわけだ。

616 名前:482 mailto:sage [2008/05/02(金) 13:59:46 ]
>>601
釣りなのかもしれんがw 俺じゃねえっつの。
妄想人格作り上げて悦に入るなよ…

617 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 14:01:09 ]
もはやスレ全体がネタと化しているな。

618 名前:482 mailto:sage [2008/05/02(金) 14:06:06 ]
C++ が欠陥の多い言語なのは議論の余地が無いからな。
昔は C++ が唯一無二の最高言語だと主張する奴も多かったが、
そういう輩は既に絶滅して久しいし、C++ の駄目駄目っぷりを
ネタとして楽しめる土壌が出来て来たんだろう。

619 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 14:13:47 ]
とりあえず>>526に返答してあげたらいいんじゃないかな

620 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 14:16:16 ]
>昔は C++ が唯一無二の最高言語だと主張する奴も多かったが、

なことない。

最近の携帯OSが出るまでC++不毛の時代だった。

ブビ厨と最近のM$のダメっぷりに呆れたのと、
独自基板対応のためにC++が再度注目された。

621 名前:482 mailto:sage [2008/05/02(金) 14:24:32 ]
>>619
518 は俺じゃないよ。
無闇矢鱈とレスを欲しがるのもどうかと思うよ。
スルーされると寂しいのかもしれんが、俺は関係無いし。

622 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 14:36:19 ]
C++の優位性はtemplateだけだからなぁ
他高級言語でtemplate並みのメタプログラミングが出来るなら
C++を使う理由はなくなるな。
ネイティブコード吐ける云々はどうでもいいことだしな。


623 名前:482 mailto:sage [2008/05/02(金) 14:37:38 ]
つ Common Lisp / Scheme



624 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 14:38:24 ]
>>622
「俺にとっては」と付け加えといてくれ。

625 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 14:38:51 ]
>>621
518じゃないのは前のレスで分かってる
>>482宛だと思って答えてくれ

626 名前:482 mailto:sage [2008/05/02(金) 14:40:43 ]
それじゃ文脈がおかしいだろ。聞きたい事があるならきちんと聞け。

627 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 14:46:05 ]
>>626
なぜ「デストラクタなんて要らない」のかを説明してくれないか。

628 名前:482 mailto:sage [2008/05/02(金) 14:55:04 ]
>>627
簡単な話。
Cではデストラクタが無くてもみんなプログラムを組んでるから。

それとも、
『デストラクタが無いCはまともに使う気しない』人が可哀想だね。
『デストラクタが無いとプログラム出来ません』なんて恥ずかしいよ。
つう感じでガソリンを補給して欲しいのか?

629 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 15:10:03 ]
それは「無くてもなんとかなる」
だけで、「要らない」理由にはならない。
自動車、飛行機、原子力、etc

630 名前:482 mailto:sage [2008/05/02(金) 15:14:27 ]
何だよ。言葉遊びか?
下らん。

631 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 15:20:23 ]
ここはニュースグループか

632 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 15:25:22 ]
>>628

>>529 >>587 >>604の通りでCには要らなくてもC++には必要。
で、>>590と答える?
だとすると「デストラクタは要らない」じゃなくて、
クラス、例外、テンプレートなどのC++の機能が要らないってことでは?

それは単に「俺はC言語で十分」ってことだと思うんだけど。
違う?

633 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 15:28:19 ]
>>631
反論の余地がなくなると国語辞典持ち出して単語の粗探しするんだよなw



634 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 15:31:27 ]
ノイマン型コンピュータのプログラムを組むのに
Cを超える高級言語は不要ってこと?
んー以外に支持受けるかもしれんな

635 名前:482 mailto:sage [2008/05/02(金) 15:32:08 ]
どうでも良い話だが「俺はC言語で十分だからデストラクタは要らない」
という文章は思い付かなかったのか? 元々そういう文脈だし、余程
国語が苦手じゃなきゃ自明だろ。

こんなどうでも良い話でよくこれだけ盛り上がれるな…

636 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 15:34:20 ]
ttp://mentai.2ch.net/prog/kako/981/981051921.html

637 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 15:38:27 ]
>>635
思いつくわけないだろw
何でピンポイントにデストラクタだけなんだよ。
C++要らない、とかなら分かるけど。

638 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 15:42:43 ]
C言語はコンストラクタが無いから使えねぇ

639 名前:482 mailto:sage [2008/05/02(金) 15:43:31 ]
>>637
お前 >>481 を読んでないのか?
粘着する前に周りを良く見ろよ

640 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 15:43:44 ]
cには不要。
c++には必要。
でFA

641 名前:482 mailto:sage [2008/05/02(金) 15:49:24 ]
>>640
『C++要らない』も追加でw

642 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 15:59:40 ]
そうだな、そういやそういうスレだった

643 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 16:03:47 ]
そもそもC++なんぞ窓以外では閑古鳥



644 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 16:12:48 ]
つまり、正統派はCOBOLと言いたいのだな

645 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 16:43:22 ]
C++はいらない子






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

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

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