Title :
An Empirical Study of Function Overloading in C++
Author :
Wang, Cheng ; Hou, Daqing
Author_Institution :
Clarkson Univ., Potsdam, NY
Abstract :
The usefulness and usability of programming tools (for example, languages, libraries, and frameworks) may greatly impact programmer productivity and software quality. Ideally, these tools should be designed to be both useful and usable.But in reality, there always exist some tools or features whose essential characteristics can be fully understood only after they have been extensively used. The study described in this paper is focused on discovering how C++´s function overloading is used in production code using an instrumented g++ compiler. Our principal finding for the system studied is that the most ´advanced´ subset of function overloading tends to be defined in only a few utility modules, which are probably developed and maintained by a small number of programmers, the majority of application modules use only the ´easy´ subset of function overloading when overloading names,and most overloaded names are used locally within rather than across module interfaces.We recommend these as guidelines to software designers.
Keywords :
C++ language; object-oriented programming; program compilers; software tools; C++; function overloading; instrumented g++ compiler; software design; software quality; Application software; Guidelines; Instruments; Production; Productivity; Programming profession; Software libraries; Software maintenance; Software quality; Usability;
Conference_Titel :
Source Code Analysis and Manipulation, 2008 Eighth IEEE International Working Conference on
Conference_Location :
Beijing
Print_ISBN :
978-0-7695-3353-7
DOI :
10.1109/SCAM.2008.25