Abstract
We address the problem of providing a C language interface to a C++ system, with the explicit goals of keeping the cost of maintaining and extending the C interface low, and facilitating the transition of the C application to C++ in the long run. We describe an approach that satisfies these goals while efficiently using the C++ mechanisms of polymorphism and inheritance, and contrast our approach with the more traditional approach of creating a C binding by providing one C routine corresponding to every C++ method.
Preview
Unable to display preview. Download preview PDF.
References
Asente, P. J. and Swick, R. R. 1990. X Window System Toolkit. Digital Press, Bedford, MA.
Cunningham, S., Craighill, N. K., Fong, M. W., and Brown, J. R., editors. 1992. Computer Graphics Using Object-Oriented Programming. Wiley, New York.
Gorlen, K. E., Orlow, S. M., and Plexico, P. S. 1990. Data Abstraction and Object-Oriented Programming in C++. Wiley, New York.
Hansen, T. 1991. “Moving a project from C into C++,” The C++ Journal, 1(4):10–24.
Kochhar, S. and Hall, J. 1992. “An object-oriented CAD/CAM presentation system,” Proceedings of the Third Eurographics Workshop on Object-Oriented Graphics, October 28–30, Champery, Switzerland.
Kochhar, S. 1994. “Object-oriented paradigms for graphical-object modeling in computer-aided design: A survey and analysis,” in Proceedings of Graphics Interface'94, Banff, Canada, May 16–20.
Stroustrup, B. 1991. The C++ Programming Language. Addison-Wesley, New York.
Wisskirchen, P. 1990. Object-Oriented Graphics: From GKS and PHIGS to Object-Oriented Systems. Springer-Verlag, New York.
Author information
Authors and Affiliations
Corresponding author
Editor information
Rights and permissions
Copyright information
© 1994 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kochhar, S. (1994). On providing a high-level C interface for an object-oriented, C++ system. In: Bertino, E., Urban, S. (eds) Object-Oriented Methodologies and Systems. ISOOMS 1994. Lecture Notes in Computer Science, vol 858. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0014028
Download citation
DOI: https://doi.org/10.1007/BFb0014028
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-58451-3
Online ISBN: 978-3-540-48804-0
eBook Packages: Springer Book Archive