C++ for Embedded: Dos and Don'ts

In some ways, writing embedded software is much like writing software for any other kind of application. But in other ways, it differs widely. This means that embedded software developers can learn lessons from their desktop-bound counterparts, but they must harvest that wisdom selectively.

Embedded software technology appears to lag behind - it's often a little late picking up on new trends and fashions. That's largely because embedded developers have a cautious, conservative attitude, which is borne out of years of experience contending with limited resources: memory that can't be treated as unlimited and CPUs that are powerful enough, but only just enough. The choice of programming language echoes this pragmatic conservatism perfectly.

Embedded guys were slow to pick up on high-level languages years ago, but eventually C became accepted. It took the arrival of very high quality code generation and transparent debugging for the industry to accept such new-fangled ideas, and that was only under the relentless pressure to become more productive. The obvious step up from C is C++. Even though its use for embedded software has steadily increased in recent years, it is far from universal. Why is that?

View Entire Paper | Previous Page | White Papers Search

If you found this page useful, bookmark and share it on: