I want to migrate my embedded code to OOD using C++ and I am not sure if the evaluation version of CW will support this, C++. Any info or insight is appreciated.
FWIW, the only time I've ever used C++ in an embedded system, I used uClinux/C++/STL in userland apps, not in kernel apps. All kernel stuff (interrupt routines, device drivers) were written in C and assembly.
If you intend to use C++ on bare metal, you need to learn a lot about the run time library you intend to use. For example, the STL allocates/deallocates memory behind the scenes like crazy. You need to understand how your virtual functions, base class objects, inheritance, etc. will operate if you want to do anything that approaches deterministic behavior.
Thanks for the insight Bob, good stuff.
My goal is to use C++ with MQX and the problem is launching a new thread from within C++. Has anyone done this?
Thanks in advance :)
What problem are you having? Calling task_create()/task_destroy() or is it something else? STL isn't thread safe, so you'll have to protect everything with mutexes.
Yes, from C++ I call _task_create() but no task runs. It builds without errors so I'm thinking it can do it. It works just fine launching the task from straight C code. Humm??
Is your task entry function a class function? If so, have you tried making it a standalone function or a friend of your class, a ronin of sorts? Betcha that works...
That sounds good to me.
Retrieving data ...