• Home
  • Search
  • Analyzing Function Overloading as a Mechanism for Compile-Time Polymorphism in Modern C++
  • https://doi.org/10.48084/etasr.15409Copy DOI Icon

Analyzing Function Overloading as a Mechanism for Compile-Time Polymorphism in Modern C++

Show More
  • Abstract
  • Literature Map
  • References
  • Similar Papers
Abstract

Polymorphism is a cornerstone of object-oriented programming that promotes code reuse and interface consistency. While runtime polymorphism through virtual functions is well understood, compile-time polymorphism via function overloading deserves deeper study in the context of modern C++. This paper provides a detailed analysis of function overloading as a mechanism for compile-time polymorphism. It explores overload-resolution rules, evaluates performance differences between static and dynamic dispatch, and integrates these findings with features introduced up to C++20. The benchmarking experiments are grounded in a computational geometry case study that compares dispatch mechanisms through area calculations for geometric shapes. Experimental results show that static dispatch through overloading outperforms virtual function calls by a factor of 3.2 in micro-benchmarks. The study concludes that combining overloading with modern C++ features enables high-performance, type-safe, and expressive code.

Similar Papers
  • Research Article
  • Citations45

Expressing object-oriented concepts in Fortran 90

  • Apr 01, 1997
  • ACM SIGPLAN Fortran Forum
  • Viktor K Decyk +2
  • Research Article
  • Citations1

Design of Real-Time Emergency Response System for Highway Networks

  • Jan 01, 2015
  • Transportation Research Record: Journal of the Transportation Research Board
  • Woon Kim +2
  • PDF
  • Research Article
  • Citations41

How to Express C++ Concepts in Fortran90

  • Jan 01, 1997
  • Scientific Programming
  • Viktor K Decyk +2
  • Conference Article
  • Citations3

Characterizing Massively Parallel Polymorphism

  • Mar 01, 2021
  • Mengchi Zhang +2
  • Book Chapter
  • Citations29

Complexity of concrete type-inference in the presence of exceptions

  • Jan 01, 1998
  • Ramkrishna Chatterjee +2
  • Book Chapter

15 - Why Use C++?

  • Jan 01, 1995
  • Software Development with C++
  • PDF
  • Research Article
  • Citations4

Software Reusability Estimation based on Dynamic Metrics using Soft Computing Techniques

  • Jun 30, 2022
  • International Journal of Computing
  • Manju Duhan +1
  • Research Article
  • Citations33

Complexity of points-to analysis of Java in the presence of exceptions

  • Jun 01, 2001
  • IEEE Transactions on Software Engineering
  • R Chatterjee +2
  • Conference Article
  • Citations9

Typed First-Class Traits

  • Jan 01, 2018
  • DROPS (Schloss Dagstuhl – Leibniz Center for Informatics)
  • Xuan Bi +1
  • Conference Article
  • Citations1

Existential Containers in Scala

  • Sep 13, 2024
  • Dimitri Racordon +2
  • Research Article
  • Citations11

SAVI objects: sharing and virtuality incorporated

  • Oct 12, 2017
  • Proceedings of the ACM on Programming Languages
  • Izzat El Hajj +3
  • Research Article
  • Citations7

Optimal dynamic dispatch of surplus gas among buffer boilers in steel plant

  • Sep 01, 2013
  • Journal of Central South University
  • Wen-Qiang Sun +1
  • Conference Article
  • Citations29

Polymorphic bytecode instrumentation

  • Mar 21, 2011
  • Philippe Moret +2
  • Book Chapter
  • Citations179

Cost Analysis of Java Bytecode

  • Jan 01, 2007
  • E Albert +4
  • Conference Article
  • Citations69

A readable TCP in the Prolac protocol language

  • Aug 30, 1999
  • Eddie Kohler +2
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.