私はVS2010で開かれたVS6で作成されたC++プロジェクトを持っています。私がしようとするとVS2010での新しいMFC C++プロジェクトを作成し、上に示したアセンブリコードでクラスを追加するまで、Visual Studio 2010は、Visual Studio 6のようにC++でインラインアセンブリをコンパイルしますか?
__asm{
mov eax,this
mov esi,[eax].m_pImage
...
すべての罰金とダンディ:それは、次のコードを含むインラインアセンブリのビットを持つクラスが含まれています。 __asmの新しい解釈は以下のようにコードを必要と突然、これはコンパイルされません(または類似した何かが、これはどのような場合にコンパイルされます):
__asm{
mov eax,this
mov esi,[eax]this.m_pImage
...
を今、私の人生のために、私は理解できませんVS2010で変換されたVS6プロジェクトが(おそらく現在無効な)インラインアセンブリコードをコンパイルできるようにする2つのプロジェクトの違いは何か、新しく作成されたプロジェクトではできません。
古いVS6コンパイラを使用できるように(隠した)設定がありますか?
なぜインラインアセンブラを使用するのですか? – Puppy