2

自己変更コードは、「実行中に自身の命令を変更する」コードです。これは通常、アセンブリ言語やウイルス以外では行われません。

リフレクションは、関数、クラス、および変数を動的に参照するために、プログラムが独自の名前空間に動的にアクセスする機能です。この記事によると、リフレクションは単なるイントロスペクション (プログラムが自分自身を調べる能力) ではなく、とりなし (プログラムが自分自身を変更する能力) でもあります。

それで、リフレクションが命令内で変数/クラス/関数名のみが「変更」される穏やかな形式の自己変更コードを指すという違いはありますか? つまり、リフレクションは、自己変更コードのように命令全体の性質を変更する機能と比較して、より穏やかで「劇的な」変更の形式ではありません。

私はこの区別を正しく持っていますか?

4

1 に答える 1