2009-08-09

http://anond.hatelabo.jp/20090809214956

なるほどコンパイラで同じアセンブラコードはかれるんですね。

じゃ、変数スコープ短く保つべきですね。

記事への反応 -
  • こういう人が書いたプログラムは保守性悪いだろうな・・・ ケース1で問題なのは、for文内で行っている処理が引数付きのメソッド呼び出しであること。 引数のないメソッドや、単純な...

    • ところが今回はカウンタ変数を引数に入れてメソッドを呼び出している。 そうなると、メソッド呼び出し先で、仮引数のメモリを毎回確保することになるので、 カウンタ変数を共通...

      • C/C++ならば、ループカウンタにローカル変数を使えば、最適化されることは分かってるから保守性重視で書く。 真面目なコンパイラなら1はどっちを書いても同じようなコードになるさ。 ...

        • 真面目なコンパイラなら1はどっちを書いても同じようなコードになるさ。 同じようなコードというのはコンパイラが吐き出すアセンブラコードの話?? 真面目なコンパイラなら修正...

          • レジスタの多いCPUの場合で、単純なループが最適化されるとループカウンタはレジスタ上に確保される。 ローカル変数の場合。全てのコンパイラを知ってる訳じゃないから、全部そうな...

            • なるほどコンパイラで同じアセンブラコードはかれるんですね。 じゃ、変数のスコープ短く保つべきですね。

              • http://anond.hatelabo.jp/20090809221610 最初の文と次の文が全然つながってない気がする 吐かれるコードが一緒なのに、じゃ、の意味が分からない…

        • まー、こんな所をチマチマこだわっても、全体は良くならん。 こまけーこたぁいいんだよ!!(AA略 そこは同意。 ただ大元の増田の投稿で「退行」って騒いでいるから、そんな騒ぐほ...

        • Cから入った中途半端なC++プログラマでオブジェクト指向の理解イマイチだからかもしれないけど、私はこんなコードをよく書く。 ObjA *a = NULL; ObjB *b = NULL; int rc = RC_SUCCESS; a = createA();...

    • といったってたかが4バイトじゃないか。 ここで問題になるようなバイト数か?

    • メソッド呼び出しは、どちらの書き方でもスタックにiがプッシュされるだけでは? もしかして特殊な環境の話?

    • にやにや

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん