これができるかどうか知りたいだけです。それがいくつかの重要なパフォーマンス上の利点を詰め込まないのであれば、私はそれをするつもりはありません。私はWebおよびゲームの開発者ですが、通常、C#でゲームを開発することはありません。
4 に答える
14
はい、可能ilasm
です。(。NET SDKに付属)を使用してコードをコンパイルできます。ただし、VisualStudioではこれをIDEでサポートしていません。これから得られるパフォーマンス上の利点はありませんが、他の方法では得られません。具体的には、C ++ / CLIは、いくつかの利点を提供する可能性があり、C#またはVBからアクセスできないすべての低レベルCLR機能をカバーします。 -最も注目すべきは、コピーなし(ref
)のボックス化解除、プレーンな無制限の関数ポインター(デリゲートではなく)と関連するcalli
IL命令、およびref
(CLI用語ではマネージドポインター)ローカル変数(パラメーターだけではなく)です。
于 2009-09-08T23:41:57.047 に答える
1
はい、できます。.NET SDKのMicrosoftのMSILアセンブラー(ilasm.exe)は、ILを実行可能コードにコンパイルします。かなりのパフォーマンス上の利点が得られることがわかった非常に焦点を絞った領域を除いて、これを行う理由はわかりません。
これは、日付が記載されている場合は、これを行う方法を説明する詳細な記事です。
于 2009-09-08T23:43:23.797 に答える
0
または、C# から少しの CIL を発行することもできます。 ILGenerator へのオブジェクト リテラルのフィード
于 2009-09-09T01:06:23.510 に答える