Информация об изменениях

Сообщение Re: Как убедить MSVC 10 в том, что виртуальная функция не ки от 05.02.2015 16:28

Изменено 05.02.2015 16:29 Pavel Dvorkin

Здравствуйте, Maxim Yurchuk, Вы писали:

MY>[list=1]

MY>
  • Этот код не приносит ожидаемого эффекта. MSVC все равно думает, что этот метод может кинуть.
    MY>
    MY>struct IBaseInterface
    MY>{
    MY>    __declspec(nothrow) virtual uint32_t Release() = 0;
    MY>};
    MY>


    __declspec(nothrow) говорит о том, что ты обещаешь не выьрасывать исключения м помощью throw. Но это синхронные исключения, а гарантировать, что не будет SEH-исключений, ты не можешь. Деление на 0 — и пожалуйста. И что потом делать ?
  • Здравствуйте, Maxim Yurchuk, Вы писали:

    __declspec(nothrow) говорит о том, что ты обещаешь не выьрасывать исключения м помощью throw. Но это синхронные исключения, а гарантировать, что не будет SEH-исключений, ты не можешь. Деление на 0 — и пожалуйста. И что потом делать ?