Hacker News new | ask | show | jobs
by not_the_fda 1203 days ago
Yep, once you find yourself writing containers that are found in C++ its time to switch to it.

I've seen too many C developers re-write C++ containers in C because they are afraid of C++, its madness.

2 comments

C++ is annoying because of name mangling and things like static initialization calling constructors.

The result is that you can easily link C code to almost any language, including C++, with almost any linker. But for C++, you usually have to use the linker that comes with the C++ compiler that compiled your library. You can write code in C++ that is as compatible as C, but you have to go out of your way to achieve that, extern "C" is only the beginning.

As a result, when the overhead of using C instead of a more complete language is not too great, I prefer to write my libraries in ANSI-C, for maximum compatibility.

Indeed, C++ is madness. Unsafe iterators, insane template language compared to cpp