Restructuring C Programs into C++ Programs
Zhang Ying,Zhou Yu-ming,Xu Bao-wen,Liu Yuan
DOI: https://doi.org/10.1007/bf03160252
2001-01-01
Wuhan University Journal of Natural Sciences
Abstract:There exist a lot of legacy systems written in C language, which are difficult to understand, modify, maintain and reuse. How to improve the quality of these non object-oriented systems has become an important issue in software engineering area. A possible way is to transform these procedural systems into semantically equivalent object-oriented systems implemented in C++ language, which provides object-oriented features such as data abstraction, inheritance and polymorphism, makes software system more comprehensible, maintainable and reusable. A detailed discussion on polymorphism analysis, object discovery and possible inheritance relation extraction on C-to-C++ conversion problem is made, which is also suitable to the transformation on legacy systems implemented in other procedural languages to equivalent object-oriented systems.