On 03/31/2014 08:43 AM, Bill Vyzas wrote:
Hi all,

I am curious to know why PowerTOP is using C++ as the language of
implementation but the majority of the program is written with the C
standards. I checked also some other open source programs like the Gnome
Power Manager and its doing the same thing.

I know that C++ can also call C and I also know that there are couple of
classes on the program but why use C++ for a few classes when you can have
structs, which are basically classes, instead.
It is because of ease of implementation using inheritance and polymorphism.
For example you can have a common device class and other device CPUs are
expanding the capability of a basic device. Also for common code all objects are
devices, if it happens to be a CPU, then cpu specific methods can be called.
Also it provides a very easy path for enhancements, without touching the core
You can do in C with struct and function pointers, but implementing in C++ is easy.



PowerTop mailing list