みたいな感じで、関数コールを嫌う文化だからなぁ突き詰めると。
そういう事をしようと思わない。別な書き方をするとかじゃなかろうか?
いちおう、C++ならクラス内にクラスは書けるから似たような事はできる。
C/C++は文化的に速度とメモリを重要視する言語だから、あんまりね、そう言うのは主流じゃないと思う。
class A{
private:
int A:
public:
A=a;
}
}
みたいなことも・・・あまり、おすすめできないし・・・。論理的には美しいんだけど・・・いろいろ弊害もあると考えるのがC/C++
ましていわんや、関数内。
※一番痛いのは、設定関数が1箇所なので、動作変更がすぐできる>>大規模システムではコードカバレッジがあるので、
根元の関数の挙動を大きく変えられたら、上位のクラスの莫大なテストやり直しだから、1箇所変更で全箇所変わるのはデメリットw。上位で修正が基本。
というか、やっちゃだめwww。
たとえば、intをdoubleにとかなら、それもう別物だから、上位も変更でしょ。普通・・・。とか。
あと#define関数はデバッガーでおえないので、なるべくC++のコンパイラ通してinlineで書いてぇぇぇぇとか。色々。むしろ#defineで複雑なことしないでー
ちょっとした関数を作る時、一部処理が冗長だなと思っても、 わざわざ外に出して関数化するほどのことでもないよな、とか この関数からしか呼ばないのに、並列に関数を置きたくない...
関数内に関数が書けるのはPascalやLispの頃から出来てたんだよな。 なぜPascalでできていたのにCでは書けなくしてしまったのか、 まあローカル変数にアクセスできないInnter Functionなんてあ...
Cの場合は使わないからだろ。関数内に関数。 というか、Cの場合関数の粒度を気にすることが多いからね。 再帰関数 > ループでかけ みたいな感じで、関数コールを嫌う分化だからな...
ちなみに・・・関数コールはC/C++もJavascriptも それなりに重い。
よく知らんけど、単に関数が1級オブジェクトかどうかの違いってことじゃないの? 要するに関数型言語なのかそうじゃないのかの違い。 なんで全部関数型にならなかったのかはもっと...
JavaScript ではローカル変数にアクセスできるけど、 たとえできなくても引数で与えればいいだけのように感じられる。 JavaScript の内部関数は this 値が変わるのが面白いよな、that = this な...
それ、メンバメソッドっていうんだよね普通は。