Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 949985
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 15, 20262026-05-15T23:29:32+00:00 2026-05-15T23:29:32+00:00

I believe C is generally faster to compile than C++, because it lacks features

  • 0

I believe C is generally faster to compile than C++, because it lacks features like late binding and operator overloading. I’m interested in knowing which features of C++ tend to slow the compilation process the most?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-15T23:29:32+00:00Added an answer on May 15, 2026 at 11:29 pm

    This is a difficult question to answer in a meaningful way. If you look purely at lines of code per second (or something on that order), there’s no question that a C compiler should be faster than a C++ compiler. By itself, that doesn’t mean much though.

    The mention of late-binding in the question is an excellent case in point: it’s almost certainly true that compiling a C++ virtual function is at least somewhat slower than compiling a C (non-virtual) function. That doesn’t mean much though — the two aren’t equivalent at all. The C equivalent of a C++ virtual function will typically be a pointer to a function or else code that uses a switch on an enumerated type to determine which of a number of pieces of code to invoke.

    By the time you create code that’s actually equivalent, it’s open to question whether C will have any advantage at all. In fact, my guess would be rather the opposite: at least in the compilers I’ve written, an awful lot of the time is spent on the front-end, doing relatively simple things like just tokenizing the input stream. Given the extra length I’d expect from code like this in C, by the time you had code that was actually equivalent, it wouldn’t surprise me a whole lot if it ended up about the same or even somewhat slower to compile.

    Operator overloading could give somewhat the same effect: on one hand, the code that overloads the operator almost certainly takes a bit of extra time to compile. At the same time, the code that uses the overloaded operator will often be shorter specifically because it uses an overloaded operator instead of needing to invoke functions via names that will almost inevitably be longer. That’s likely to reduce that expensive up-front tokenization step, so if you use the overloaded operator a lot, overall compilation time might actually be reduced.

    Templates can be a bit the same way, except that in this case it’s often substantially more difficult to even conceive of a reasonable comparison. Just for example, when you’re doing sorting in C, you typically use qsort, which takes a pointer to a function to handle the comparison. The most common alternative in C++ is std::sort, which is a template that includes a template argument for the comparison. The difference is that since that is a template argument, the code for the comparison is typically generated inline instead of being invoked via a pointer.

    In theory I suppose one could perhaps write a giant macro to do the same — but I’m pretty sure I’ve never seen such a thing actually done, so it’s extremely difficult to guess at how much slower or faster it might be to use if it one existed. Given the simplicity of macros versus templates, I’d guess it would compile faster, but exactly how much faster will probably remain forever a mystery; I’m certainly not going to try to write a complete Quicksort or Introsort in a C macro!

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I've read that (all things equal) PHP is typically faster than MySQL at arithmetic
I believe the application has some parts that target .NET, and some that don't.
I believe any programmer who has been dealing with database requests in a gui
I believe I need a DTD to define the schema and an XSLT if
I believe strongly in using unit-tests as part of building large multi-platform applications. We
I believe several of us have already worked on a project where not only
I believe the architecture type (x86 vs x64) is abstracted away for you when
I believe that Agile is nothing but another implementation of Spiral Model. I am
I believe that quantifying the productivity increase (extra working hours) is the most effective
I believe I'm getting bitten by some combination of nested scoping rules and list

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.