Did you like how we did? Rate your experience!

4.5

satisfied

46 votes

Why do people say C?

There are polar extremes to this and they have to be considered in order to understand the variety of answers that are provided here. (a) Memory management in C or C++ will give you the best performance This is absolutely true. Anything you can do in any high level language can be implemented in C or C++. If the memory management approach used in environment XXX is faster, then you can write code in C or C++ to mimic that approach. Moreover, you can micro-manage it to a greater extent, cleaning up the memory the moment that it is no longer needed, rather than expecting CPU time to be wasted in trying to figure out if that memory is no longer in use. (b) Memory management in C or C++ often gives inferior performance This is absolutely true too. The problem is that we are almost always dealing with one fixed asset: programmer time. The project schedule has a delivery date that must be met by a development team that is often predetermined. Those people could spend their time doing fine-grained memory management in C or C++, OR they could spend that time testing approaches, evaluating algorithms, and concentrating on tuning their code. The latter effort is usually the most fruitful in squeezing out better performance. Conclusion Huh? So does C or C++ deliver the fastest solution (a) or not? (b) If your project has a focus on performance and you are able to devote significantly more man-hours to the project, then C or C++ would be the best choice. But if you are on a tight schedule then you are more likely to deliver a performant solution on schedule when using Java, Python, or C#. Of course there are many other factors that affect performance, but your question focused on memory management. BTW - Your question was about whether C and C++ were better, which could relate to something other than performance. So if you intended it in another way, please edit or comment. Thanks.

100%
Loading, please wait...