アカウント名:
パスワード:
Stroustrup氏というと、インタビュー形式のジョーク文書を思い出す。http://hp.vector.co.jp/authors/VA000092/jokes/strup.html [vector.co.jp]
C++の、重い、メモリ大食い、っていう欠点が、コンピュータの性能向上で気にならなくなったってのがあるでしょうそれに、C++より重いスクリプト系言語やVM系インタプリタ言語が当たり前のように使われるようになったので相対的に軽くなった
C++でまともなコードを書いたことがないだろ?
そういう風評被害はなくならんもんなんだなあ。。。
C/C++のファイル操作速度比較 [qiita.com]結果Cの標準ライブラリが数倍速いです。
プログラミング言語の速度比較 [geekpage.jp]C言語 (gcc) vs C++ (g++)C言語の方が微妙に早くて省メモリです。
C++でまともなコードを書いたことがないことを、わざわざ自分で証明しに来なくてもいいのに。w
わかってる人は、そんな筋違いだったりいろいろ足りてなかったりする情報を出したりはしないんだよ。
そのリンク先のコメントもちゃんと読め。VC特有の問題じゃないか、と書いてある。
「2006/11/30」って、10年以上前の記事じゃん。最近のコンパイラを使った結果を言ってみろ。
C言語バンザイ!
C++が重くてメモリ大食いというのは(Cと比べて)大規模なソフトに使われることが多かったことに起因する誤解です。
いやCマからすると単純な式から次々と生成されるテンポラリオブジェクトに怖気を感じたんだと思うよ当時の矮小なメモリ環境でコリャ無いわと却下
やはり誤解では?
これビルド時の話ってことですよね。コンパイルの重さとビルド後実行ファイルの重さの話が交錯してる気がする。
違うよ
相当変なライブラリ掴まされましたなぁそうでなければ、使う側の問題ですな
誤解ではなく実際こんな感じでした386/68000 Cは重くてメモリ大食い(アセンブラと比べて)だけど用途によってはどうにかつかえるかな486/68040 C++は重くてメモリ大食い(Cと比べて)だけど用途によってはどうにかつかえるかな
そんなことは無い。8086機+Turbo C++でも十分実用的に使えてたよ。というか386ならlinuxやらBSDも普通に動いてたぞ。当然C言語で。
昔はRTTIも使用することがあったから実行時は重かったんだよ。最近ははテンプレートや多重派生の抑制により、静的要素が増えて速くなってるのを知らないのかも。
もちろん、昔の書き方もできるけど人によってテクニックに相当な違いが出るからね。
それについて来れない、c言語さん達の足掻き様はすごいものがありますな
フィジカルコンピューティングでモテモテのマイコンボードArduinoの8bitCPU用のスケッチだって実態はC++としてコンパイルされているくらいで、小さくて軽いプログラムの作成にも重宝されています。大きいとか重たいというのは半分以上は昔の開発環境に対する感想だったのでは?それからこれも環境に依存しますが富豪的プログラムを作ってしまい易いところもあるかと思います。
昔の開発環境と言うかC++がCへのコンバータで実行環境がMS-DOSとかhuman68kの頃だとC++の実行ファイルはでかくて遅いっていう感じで雑誌とかに書かれていた記憶があります。
ペーペーの新人でしたがまさにその時代を現場経験しています。コンバータではなくトランスレータと呼んでましたね。機械的な置き換えなもんで出てくるコードは確かにそれなりに大きくなってしまいますね。ネームスペースなんかはstruct使ったトリックで閉じ込めるのでどうしてもポインタの連続になったりするし。今のスクリプト言語がCモジュールと連携しているのと似た感じで、重めの箇所はcやasmとの併用だったんで速度面はそこそこごまかせていた気がします。
arduinoとかはみんななるべくSTL使わないようにとか配慮はしてるけどね。C++17とかでバリバリ書けるわけではない。
そうなのかな? でも昔は確かに重かったかなぁ。
たとえば、VC++に関して言えば、最初、例外をWindows OSの構造化例外で構築したので、死ぬほどパフォーマンスが悪かった。その後、改良したため例外が重いなんて話はなくなったけどcomは越えられないことになった。
でもこれって性能向上で気にならなくなったわけじゃないよ。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
物事のやり方は一つではない -- Perlな人
Bjarne Stroustrup インタビュー (スコア:3, 参考になる)
Stroustrup氏というと、インタビュー形式のジョーク文書を思い出す。
http://hp.vector.co.jp/authors/VA000092/jokes/strup.html [vector.co.jp]
Re:Bjarne Stroustrup インタビュー (スコア:0)
C++の、重い、メモリ大食い、っていう欠点が、コンピュータの性能向上で気にならなくなったってのがあるでしょう
それに、C++より重いスクリプト系言語やVM系インタプリタ言語が当たり前のように使われるようになったので
相対的に軽くなった
Re:Bjarne Stroustrup インタビュー (スコア:2)
C++でまともなコードを書いたことがないだろ?
そういう風評被害はなくならんもんなんだなあ。。。
Re: (スコア:0)
C/C++のファイル操作速度比較 [qiita.com]
結果
Cの標準ライブラリが数倍速いです。
プログラミング言語の速度比較 [geekpage.jp]
C言語 (gcc) vs C++ (g++)
C言語の方が微妙に早くて省メモリです。
Re:Bjarne Stroustrup インタビュー (スコア:2)
C++でまともなコードを書いたことがないことを、わざわざ自分で証明しに来なくてもいいのに。w
わかってる人は、そんな筋違いだったりいろいろ足りてなかったりする情報を出したりはしないんだよ。
Re: (スコア:0)
そのリンク先のコメントもちゃんと読め。VC特有の問題じゃないか、と書いてある。
「2006/11/30」って、10年以上前の記事じゃん。最近のコンパイラを使った結果を言ってみろ。
Re: (スコア:0)
C言語バンザイ!
Re:Bjarne Stroustrup インタビュー (スコア:1)
C++が重くてメモリ大食いというのは(Cと比べて)大規模なソフトに使われることが多かったことに起因する誤解です。
Re: (スコア:0)
いやCマからすると
単純な式から次々と生成されるテンポラリオブジェクトに怖気を感じたんだと思うよ
当時の矮小なメモリ環境でコリャ無いわと却下
Re: (スコア:0)
やはり誤解では?
Re: (スコア:0)
これビルド時の話ってことですよね。
コンパイルの重さとビルド後実行ファイルの重さの話が交錯してる気がする。
Re: (スコア:0)
違うよ
Re: (スコア:0)
相当変なライブラリ掴まされましたなぁ
そうでなければ、使う側の問題ですな
Re: (スコア:0)
誤解ではなく実際こんな感じでした
386/68000 Cは重くてメモリ大食い(アセンブラと比べて)だけど用途によってはどうにかつかえるかな
486/68040 C++は重くてメモリ大食い(Cと比べて)だけど用途によってはどうにかつかえるかな
Re: (スコア:0)
そんなことは無い。8086機+Turbo C++でも十分実用的に使えてたよ。
というか386ならlinuxやらBSDも普通に動いてたぞ。当然C言語で。
Re: (スコア:0)
昔はRTTIも使用することがあったから実行時は重かったんだよ。
最近ははテンプレートや多重派生の抑制により、静的要素が増えて速くなってるのを知らないのかも。
もちろん、昔の書き方もできるけど人によってテクニックに相当な違いが出るからね。
それについて来れない、c言語さん達の足掻き様はすごいものがありますな
Re:Bjarne Stroustrup インタビュー (スコア:1)
フィジカルコンピューティングでモテモテのマイコンボードArduinoの8bitCPU用のスケッチだって実態はC++としてコンパイルされているくらいで、小さくて軽いプログラムの作成にも重宝されています。大きいとか重たいというのは半分以上は昔の開発環境に対する感想だったのでは?それからこれも環境に依存しますが富豪的プログラムを作ってしまい易いところもあるかと思います。
Re: (スコア:0)
昔の開発環境と言うかC++がCへのコンバータで実行環境がMS-DOSとかhuman68kの頃だとC++の実行ファイルはでかくて遅いっていう感じで雑誌とかに書かれていた記憶があります。
Re: (スコア:0)
ペーペーの新人でしたがまさにその時代を現場経験しています。
コンバータではなくトランスレータと呼んでましたね。
機械的な置き換えなもんで出てくるコードは確かにそれなりに大きくなってしまいますね。
ネームスペースなんかはstruct使ったトリックで閉じ込めるのでどうしてもポインタの連続になったりするし。
今のスクリプト言語がCモジュールと連携しているのと似た感じで、重めの箇所はcやasmとの併用だったんで速度面はそこそこごまかせていた気がします。
Re: (スコア:0)
arduinoとかはみんななるべくSTL使わないようにとか配慮はしてるけどね。
C++17とかでバリバリ書けるわけではない。
Re: (スコア:0)
そうなのかな? でも昔は確かに重かったかなぁ。
たとえば、VC++に関して言えば、最初、例外をWindows OSの構造化例外で構築したので、死ぬほどパフォーマンスが悪かった。
その後、改良したため例外が重いなんて話はなくなったけどcomは越えられないことになった。
でもこれって性能向上で気にならなくなったわけじゃないよ。