c++ использует голую функцию

Я пытаюсь изучить ASM и хочу попробовать несколько вещей в сочетании с C++. Часть ASM выполняется в голой функции. Но всякий раз, когда я вызываю функцию (пустой ), приложение вылетает из следующей функции. Что я должен сделать в голой функции, чтобы она заработала, мне нужно вытолкнуть esp или что-то в этом роде? Пример может быть полезен.

_declspec(naked) void asmfunc()
{
    _asm
    {
    }
}

int _tmain(int argc, _TCHAR* argv[])
{
    i = 1;

    asmfunc();

    cout << i << endl; // <-- crash
    system("pause");

    return 0;
}
6
задан Paul R 8 July 2012 в 18:08
поделиться