C++ってなんであんなに肥大化しちゃったの?
■ このスレッドは過去ログ倉庫に格納されています
0701デフォルトの名無しさん
2008/10/07(火) 11:27:57C++信者には見えなくなってるのか
以下のようなif文がある
if (expr) statement
exprを評価して真の場合にだけstatementを評価する
常識だな
これを
if(expr, statement)
という関数にすることを考える
C++は多くの言語と同様正格評価だから、if関数を評価する前に
expr, statementの両方を評価することになるが、
言うまでも無くこの時点で元のif文とは意味が異なっていることになる
&&や||も全く同じだ
これらはショートサーキットだから、本来右オペランドは条件付きでしか
評価されない
C/C++のコーディングではその性質が多用されるが、関数化されていれば
常に評価されてしまう
禿は、無用で、使えば問題を引き起こすと分かっているこの機能を
平然と取り入れ、仕方が無いからC++ユーザはそれを避けることで
問題を回避する
些細に見えるかもしれないが、このようなものが積もりに積もって、
結果としてC++は糞の山になっているんだぞ
■ このスレッドは過去ログ倉庫に格納されています