この偽のプログラムを想像してみてください。
void foo ( void )
{
// anything
}
int main ()
{
foo ();
return 0;
}
Visual Studioを使用してデバッグモードでコンパイルすると、コンパイラはある種の「関数マップ」を作成します。
したがって、たとえばデバッガーでfoo()をフォローする場合、または&fooを介して関数のオフセットを取得しようとすると、jmpの「リスト」が表示されます。これを再度フォローすると、実際の関数に移動します。体。
私の質問は次のとおりです。&fooがjmpではなく関数本体にアドレスを返すように、選択された単一の関数に対してこれを無効にする可能性はありますか。もちろん、デバッグモードを無効にする必要はありません。
そうでない場合、プログラム全体でこれを有効/無効にするフラグはどれですか?
前もって感謝します !
ユーザーSigTermの編集: