Do programmers still write in C++?

06.02.2013 Andrey Karpov

I find this question pretty strange. The answer is yes, of course, and that will remain so for a long time. But I'm asked this question from time to time at conferences, or when communicating with developers on forums. I've decided to answer this question in the form of a brief post, so that I can just refer people to it in the future.

We develop the PVS-Studio code analyzer for C/C++ software developers. People sometimes ask me, "Why these particular languages? C/C++ is old and few developers use it surely?" When I tell them this is quite a popular language, and it is widely used, they look sincerely astonished.

Perhaps the reason is that the Internet is full of articles, forums, and news about new languages and their capabilities. Programmers who don't work with the C/C++ language, simply don't notice rare news items about it among all that stuff. It's quite natural: there's no point in advertising what has been widely known and used for a long time. As a result, they come to the conclusion that this language was abandoned long ago, and now is used only to maintain some old projects.

This isn't the case. This is a very popular, live, and actively developing language. Just have a look at the rating of programming languages , and see for yourself. Currently it can be found here: TIOBE Programming Community Index for January 2013.

Picture 1

If you sum up C, C++ and Objective-C, you'll get 37%. It's 6 times higher than PHP, for instance. The extinction of the C/C++ language family is quite out of the question.

Here's the answer to the question as to why we prefer to support C/C++ in PVS-Studio: because these are the most popular languages nowadays. Besides, they are complex, tricky, and very much error-prone. It's a paradise where static code analyzers can thrive.

Note. Don't take that as a criticism of the C or C++ language. It's just the price we have to pay for the flexibility of these languages, and the capability of getting the fast optimized code they generate.

Once again I would like to touch upon the incorrect belief that C/C++ is now used only in old projects, or microcontrollers. No, many contemporary and popular applications are being written in this language. For instance, Chromium - you can't say it's an ancient project by any means.

Here is a list of popular applications written in C++: C++ Applications.

To finish the article, I would like to give you one more link to a discussion: Why is C++ still a very popular language in quantitative finance?