MicroC OS-II 与 C++

MicroC OS-II with C++

我想使用 MicroC OS-II 和 C++ 建立一个新的嵌入式项目。

当我想使用 new 运算符创建 class 的实例时,我的处理器遇到了一个异常,该异常似乎来自 new 运算符中失败的 malloc 调用。这是一个失败的例子:

testC* test = new testC();

testC 是一些 class 具有整数成员变量。顺便说一句,我正在使用 Altera Nios 2。

经过一番研究,我得出的结论是malloc与RT不兼容OS。 因此我的问题是:是否可以将 C++ 与 uC/OS-II 一起使用?或者有没有办法替换新运算符中的 malloc 调用?

到目前为止,我找不到任何关于此的附加信息。

非常感谢您的帮助。 最好, 罗马

我找到了避免使用 new 运算符同时仍保持多态性的解决方案(这是使用 new 运算符的实际原因)。我在堆栈(或其他地方)上创建一个对象,例如与

TestC test = TestC();

在实际代码中,我引用了基数 class:

BaseC * base = &test;

也许这对其他人有帮助。 谢谢大家。