- GCは失敗。メモリは自分で管理せよ! その2©2ch.net
67 :デフォルトの名無しさん[sage]:2015/11/28(土) 13:55:47.33 ID:pohBt4lh - null代入なんていちいち書いていたら
コードが冗長になって保守性が落ちる。 メモリ食いのオブジェクトなど、クリティカルな部分でのみ使うべき
|
- C++相談室 part120 [転載禁止]©2ch.net
881 :デフォルトの名無しさん[sage]:2015/11/28(土) 19:12:48.35 ID:pohBt4lh - そりゃtemplate classと違って同じ関数にいくらでもtemplate含めてオーバーロード出来るからだろう。
どれに対する特殊化か指定するのがややこしすぎるし、adl含めてどれが呼ばれるのかも今以上にカオスになる。
|
- GCは失敗。メモリは自分で管理せよ! その2©2ch.net
78 :デフォルトの名無しさん[sage]:2015/11/28(土) 19:27:35.81 ID:pohBt4lh - 関数内ローカルな変数は
いくら大きくても大概スコープだけで どうにでもなる。 javascriptみたいなのはlambdaでスコープ切ればいい。
|
- GCは失敗。メモリは自分で管理せよ! その2©2ch.net
81 :デフォルトの名無しさん[sage]:2015/11/28(土) 20:14:43.65 ID:pohBt4lh - 永続的な変数でもなきゃ、変数の寿命はコンパイラが把握しているから、null代入がどんな変数にも必要なら勝手に挿入するんじゃね。
そうじゃないとしたら、なんでもかんでもnull代入が必要なんてのは幻想だよ。
|
- GCは失敗。メモリは自分で管理せよ! その2©2ch.net
86 :デフォルトの名無しさん[sage]:2015/11/28(土) 23:46:43.25 ID:pohBt4lh - >>82
勝手にnull代入すると表現するから気持ち悪く感じるだけで、コンパイラが各変数についてもうアクセスされる可能性の無い基本ブロックに到達したら、その変数をGCのマークの起点として使用しないようにフラグを管理すると言えば当たり前の話じゃね。 フラグの持ち方として変数にnullを代入しているだけで。
|
- C++相談室 part120 [転載禁止]©2ch.net
885 :デフォルトの名無しさん[sage]:2015/11/28(土) 23:51:16.21 ID:pohBt4lh - 部分特殊化と同じことが自動でできるとかそんな超技術があるなら、あらゆるプログラムがなにも指示せずとも自動で出来上がることになるからプログラマもプログラミング言語も不要になるな。
|