Я использую Green Hills INTEGRITY 5.0.10 для Marvell Monahans PXA 320. Для разработки я использую MULTI 4.2.3, и я выбираю язык C ++.
Я только изучаю управление памятью INTEGRITY и задаюсь вопросом об использовании динамической памяти.
Я хотел бы использовать std :: string, std :: map и т. Д. Конечно, это требует кучи. Могу ли я использовать эти классы? В более общем смысле, могу ли я использовать кучу напрямую (new / delete)?
Спасибо,
Дейв
Green Hills не ориентируется на сверхмаленькие встроенные микроконтроллеры со строгими ресурсами с помощью своей ОС INTEGRITY или MULTI IDE, поэтому на своем рынке они не продвинулись бы далеко, если бы их проприетарный компилятор C ++ не поддерживал STL или кучу в целом. , Следующие веб-страницы, кажется, поддерживают это:
http://www.ghs.com/news/20030915_m40.html
http://www.ghs.com/news/20041116_mobileye.html
Поэтому я бы сказал: «Да, вы можете использовать std :: string, std :: map, malloc (), new и т. Д.»
Да. Я разрабатываю на INTEGRITY 5.0.11 и Multi 4.2.4, и вы можете использовать все эти вещи.
Да, вы можете использовать всю библиотеку STD и можете скомпилировать ее с поддержкой исключений или без нее. Он также поддерживает японский автомобильный стандарт, о котором я мало что знаю.
Начиная с середины 2017 года компилятор Green Hills поддерживает также C ++ 11, я не могу сказать вам, насколько хорошо он поддерживается, потому что мы все еще находимся в процессе перехода