Comment Re:Why does C++ matter? (Score 1) 476
If an abstraction is being properly used in C++ then a C version program would probably be best with the same abstraction. If C++ has some language support for that abstraction which C lacks and which allows the program intent to be expressed more directly then there's no reason to imagine that whatever hand-built layers are used for that abstraction in C are necessarly going to be better than the more direct expression in C++.
For example, if a program should use dynamic dispatch then a compiler is likely to do better optimizing C++'s virtual functions (using common techinques such as devirtualization) than it will do with some hand-rolled dynamic dispatch systen in C.
The only way C comes out ahead is when comparing well written C to poorly written C++, e.g. a C program that properly does not use dynamic dispatch to a C++ program that uses virtual functions gratuitously.