2012-12-12 49 views
0

我在Green Hills INTEGRITY 5.0.10下運行,目標是Marvell Monahans PXA 320.對於開發,我使用MULTI 4.2.3,我的語言選擇是C++。在Green Hills INTEGRITY下使用堆/ C++標準庫INTEGRITY

我只是在學習INTEGRITY的內存管理,想知道如何使用動態內存。

我想使用std :: string,std :: map等等。當然,這些都需要一個堆。我可以使用這些類嗎?更一般地說,我可以直接使用堆(新/刪除)嗎?

謝謝, 戴夫

+0

我從來沒有使用的完整性,但有什麼阻止你從創建一個自定義分配器然後傳遞給std :: string或std :: map? – NtscCobalt

回答

0

青山不針對他們的INTEGRITY OS或MULTI IDE超級微小的,資源嚴重受限的嵌入式微控制器,所以在他們的市場,他們不會走得很遠,如果他們的專利一般來說,C++編譯器不支持STL或堆。下面的網頁似乎支持這一點:

http://www.ghs.com/news/20030915_m40.html

http://www.ghs.com/news/20041116_mobileye.html

所以我說:「是的,你可以使用的std :: string,性病::地圖,的malloc(),新,等等。」

2

是的。我在INTEGRITY 5.0.11和Multi 4.2.4上開發,你可以使用所有的東西。

0

是的,你可以使用所有的STD庫,並且可以在有或沒有異常支持的情況下編譯它。它也支持日本的汽車標準,對此我不太瞭解。

從5月中旬,2017年綠山編譯器還支持C++ 11,我不能告訴你如何支持非常多,因爲我們還在過渡