Зачем тестировать MEX-функции в MATLAB?

Прежде, чем сгенерировать код C/C++ для вашего кода MATLAB®, это - лучшая практика протестировать MEX-функцию, чтобы проверить, что это обеспечивает ту же функциональность как оригинальный код MATLAB. Чтобы сделать это тестирование, запустите MEX-функцию с помощью тех же входных параметров, как вы раньше запускали оригинальный код MATLAB и сравнивали результаты. Для получения дополнительной информации о том, как протестировать MEX-функцию с помощью приложения MATLAB Coder™, смотрите Проверку на Проблемы Во время выполнения при помощи Приложения и Проверьте MEX-функции в Приложении MATLAB Coder. Для получения дополнительной информации о том, как протестировать MEX-функцию в командной строке, смотрите, Проверяют MEX-функции в Командной строке.

Выполнение MEX-функции в MATLAB прежде, чем сгенерировать код позволяет вам обнаружить и зафиксировать ошибки времени выполнения, которые намного более трудно диагностировать в сгенерированном коде. Если вы сталкиваетесь с ошибками времени выполнения в своих функциях MATLAB, фиксируете их прежде, чем сгенерировать код. Смотрите Фиксируют Ошибки, Обнаруженные в Ошибках времени выполнения Времени и Отладки Генерации кода.

Когда вы запускаете свою MEX-функцию в MATLAB, по умолчанию, следующие проверки на этапе выполнения выполняются:

  • Проверки целостности памяти. Эти проверки выполняют проверку границ массивов, проверку размерности, и обнаруживают нарушения целостности памяти в коде, сгенерированном для функций MATLAB. Если нарушение обнаруживается, выполнение остановок MATLAB и предоставляет диагностическое сообщение.

  • Скорость отклика регистрируется в коде, сгенерированном для функций MATLAB. Эти проверки включают периодические проверки на Ctrl +C перерывы в коде, сгенерированном для функций MATLAB, позволяя вам отключить выполнение с Ctrl +C.

Для получения дополнительной информации смотрите Проверки на этапе выполнения Управления.