Назвать код C++ от MATLAB?

Я также не принимаю сторону никакого лагеря... помещают Основу туда сегодня, и через 6 месяцев кто-то будет бить класс MyDerivedClass в Вас кодовая база, в то время как Вы не смотрите.

13
задан rlbond 22 October 2009 в 14:07
поделиться

3 ответа

Прочтите Руководство по MEX-файлам , особенно разделы 25–27 для C ++. Базовые структуры данных STL / Boost должны работать, но многопоточность с Boost может быть проблемой.
cout не будет работать должным образом в C ++, mexPrintf Вместо этого следует использовать .

8
ответ дан 2 December 2019 в 00:46
поделиться

Файлы C ++ фактически компилируются внешним компилятором. Используйте mex -setup , чтобы выбрать, какой из них ( здесь - это список поддерживаемых компиляторов). Следовательно, у вас не должно происходить слишком много странных вещей, и вы не должны быть слишком ограничены тем, что вы можете делать.

В прошлом году я делал кое-какие вещи MEX, и моя память немного устарела, но вам нужно построить Массивы MATLAB с использованием MEX-функций. Я нашел документацию MATLAB адекватной, и весь опыт не слишком болезненным.

1
ответ дан 2 December 2019 в 00:46
поделиться

It's certainly possible to write C++ MEX files which use STL and boost. In general, you should be able to do anything you please inside a C++ MEX file. The main practical restriction is that MATLAB already ships with a bunch of libraries, so if you're using one of the boost pieces that needs a shared library (some are header-only), you'll need to match the version you compile against with that shipping with MATLAB.

For instance, MATLAB R2009b ships with boost 1.36 (you can tell by looking at the names of the libraries in /bin/).

3
ответ дан 2 December 2019 в 00:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: