Inside the C++ Object Model

Inside the C++ Object Model focuses on the underlying mechanisms that support object-oriented programming within C++: constructor semantics, temporary generation, support for encapsulation, inheritance, and "the virtuals"-virtual functions and virtual inheritance. This book shows how your understanding the underlying implementation models can help you code more efficiently and with greater confidence. Lippman dispells the misinformation and myths about the overhead and complexity associated with C++, while pointing out areas in which costs and trade offs, sometimes hidden, do exist. He then explains how the various implementation models arose, points out areas in which they are likely to evolve, and why they are what they are. He covers the semantic implications of the C++ object model and how that model affects your programs.Highlights Explores the program behavior implicit in the C++ Object Model's support of object-oriented programming. Explains the basic implementation of the object-oriented features and the trade offs implicit in those features. Examines the impact on performance in terms of program transformation. Provides abundant program examples, diagrams, and performance measurements to relate object-oriented concepts to the underlying object model.If you are a C++ programmer who desires a fuller understanding of what is going on "under the hood," then Inside the C++ Object Model is for you!

[1]  Doug Lea The GNU C++ library , 1996 .

[2]  Bjarne Stroustrup,et al.  The Design and Evolution of C , 1994 .

[3]  Bjarne Stroustrup,et al.  The Annotated C++ Reference Manual , 1990 .

[4]  Andrew J. Palay C++ in a Changing Environment , 1992, C++ Conference.

[5]  Dmitry Lenkov,et al.  A Portable implementation of C++ Exception Handling , 1992, C++ Conference.

[6]  Douglas C. Schmidt,et al.  A Domain Analysis of Network Daemon Design Dimensions , 1998 .

[7]  Jerry Schwarz Initializing static variables in C++ libraries , 1996 .

[8]  Lee R. Nackman,et al.  Scientific and Engineering C++: An Introduction with Advanc , 1995, IEEE Computational Science and Engineering.

[9]  Bjarne Stroustrup,et al.  Exception handling for c++ (revised) , 1990 .

[10]  Douglas C. Schmidt,et al.  A case study of C++ design evolution , 1996 .

[11]  Martin D. Carroll,et al.  Designing and coding reusable C++ , 1995 .

[12]  Alan D. Sloane,et al.  The Object Binary Interface: C++ Objects for Evolvable Shared Class Libraries , 1994, C++ Conference.

[13]  Bjarne Stroustrup,et al.  Pointers to Class Members in C++ , 1988, C++ Conference.

[14]  Michael L. Nelson An Introduction to Object-Oriented Programming. , 1990 .

[15]  Steve Vinoski Distributed Object Computing With CORBA , 1993 .

[16]  Stan Lippman Applying the copy constructor , 1996 .

[17]  Ken C. Budge,et al.  High-Performance Scientific Computing Using C++ , 1992, C++ Conference.

[18]  William Pugh,et al.  Two-directional record layout for multiple inheritance , 1990, PLDI '90.