私はMathWorks社のMATLABで他人のコード内の関数の使い方のeval(表現)で発生しました:MATLABコードでのeval( 'expression')の使用と影響?
MatlabのヘルプでMathWorks社のものが指摘
for n = 1 : 4
sn = int2str(n) ;
eval([ 'saveas(fig' sn ', [ sName' sn ' ], ''fig'') ' ]);
end
こと:
多くの一般的な例 eval関数の使用は効率が悪く、他のMATLAB関数や言語構成よりも読み込みとデバッグが難しくなります。
この後、私はこの機能を他の多くのプログラム言語、つまりPython、JavaScript、PHPなどで使用しています。
だから私はいくつかの質問している:この機能の
- ウィルの使用量は、私のコードのパフォーマンスにenfluencedこと?
- 実行が遅くなる場合、なぜそれが発生しますか?
- 呼び出されるたびに実行が遅くなる場合、この機能を使用する理由は何ですか?
これはMATLABの場合はこれが真実ではありませんが、私は思っていません – dynamic
Python、JavaScriptまたはPHPで 'eval'の有効なユースケースを見つけるのは難しいと思います。しかし、MATLABについてはわかりませんが、そこではどのコンストラクトが利用できるか分かりません(さらに重要なのは、どのコンストラクトが利用可能でないかです)。 –
@ yes123:これらのような一般化は絶対にしないでください。 –