アカウント名:
パスワード:
今回追加のnonnullってのは微妙に便利そうですね。でもこういう どうでもよさげなGCC拡張って、どういう基準で追加を決定して るんでしょう。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
「科学者は100%安全だと保証できないものは動かしてはならない」、科学者「えっ」、プログラマ「えっ」
C++はあまり変化なしか? (スコア:0)
今回追加のnonnullってのは微妙に便利そうですね。でもこういう どうでもよさげなGCC拡張って、どういう基準で追加を決定して るんでしょう。
Re:C++はあまり変化なしか? (スコア:0)
Re:C++はあまり変化なしか? (スコア:5, 興味深い)
ccache を使うと、コンパイル時間が結構削減できます。
どれくらい速くなるかは、webにある表を見てください
使い方も簡単で
CC=gcc を
CC=ccache gcc
に変えるだけです。gccのバージョンには依存しません。
gcc自体がpre-compileの機能をサポートしてくれるまでの
つなぎとしては十分に使えると思います。お試しを。
Re:C++はあまり変化なしか? (スコア:1)
#defineやテンプレートなどのマクロ系の機能にとって、
キャッシュしときたい情報が何なのかというと、
「処理前」のデータをキャッシュしても駄目(それじゃソースそのまんまだから当然)だし、
「処理後」のデータをキャッシュしても駄目(マクロに毎回違うパラメータを与えられるたびに無意味になる)である、
…という点が問題なわけです。
だから、プリプロセスの「途中」の段階を、キャッシュしとかないとならない。
パーサーの内部状態みたいな、半完成の情報を。
まあ、それでも相互依存性が高いクラス同士になると、PCHですら十分じゃない、ということがあるようですが。
#クラスをちょっと直すたびにコンパイルが1時間、ってな世界はもうウンザリなのでG7
#C++みたいに埋め込みObject方式の選択肢があると、中間形式にとっても変更コストが大きいみたいですね。
##delphiならクソでかいアプリのコンパイルでも1分かかることは稀、大抵数秒、という世界なので、その生産性の違いたるや…
元を正せば、コンパイラが「最初から」そういう中間情報をファイルに落とすってのをきちんとやるべき
なんでしょうけど、Cだとそれが文化的(?)に後回しになるようですね。
今時の言語はDelphi(笑)にせよJavaにせよ、コンパイル結果のファイルにヘッダ相当の情報が
(後からコンパイラが素早く読みやすいように)入ってるっぽいし、依存関係の解決ももう少しスマートにやれるようになってるっぽい。
#リンカに渡す-lの「順番」を自分で解決するのはもうウンザリなのでG7。順番なんざ機械が内部的に面倒見ろ。javaみたいに。
Re:C++はあまり変化なしか? (スコア:0)