Login | Register   
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: C++
Expertise: Beginner
Feb 29, 2000

Virtual and Non-Virtual

Question:
Why would a call to a virtual function execute slower than a call to a non-virtual function?

Answer:
Because the call is resolved through an additional level of indirection—instead of going directly to the address of the function's text and execute it (this is how non-virtual functions are resolved)—the runtime environment first must lookup the address of the virtual function in a table, and only then can it call that function. This lookup adds slight runtime overhead.

DevX Pro
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap