Re:Microsoft to C99 Developers: Use ISO C++
by TazeTSchnitzel on Monday May 07, 2012 @12:29PM
(#3939680)
These are my feelings too. C++ is not supposed to be object-oriented C, rather, it is supposed to be an improved C with more features, one being language support for OOP. You might as well just use C++.
[ Parent
| on HN ]
Perhaps C++ is mostly a superset of C in a technical sense, but in practice, it comes with its own idioms, its own conventions, its own design patterns, and its own culture, all very distinct from those of C. There's far more to consider when selecting a programming language beyond "Does Language X have a superset of the features of Language Y?".
Plus, sometimes having fewer features is itself a feature. I would say that this is especially true when comparing the slim, minimal design of C with the "everything and the kitchen sink" approach of C++. Not that C++ is never useful in its own right, but that doesn't mean its appropriateness for a given task is always greater than or equal to that of C.
Re:Microsoft to C99 Developers: Use ISO C++
by TazeTSchnitzel on Monday May 07, 2012 @01:04PM
(#3939857)
With C99 and C11 though, C is becoming larger and less minimal. I'm not sure that argument still applies.
> an improved C with more features
This mostly means it's incompatible with C even in the parts of the language both of them share. Completely valid and idiomatic C code will therefore not always compile if you use a C++ compiler.