Skip to main content

Big C++, 2nd Edition

Big C++, 2nd Edition

Cay S. Horstmann, Timothy A. Budd

ISBN: 978-0-470-46145-7

Nov 2008

1092 pages



Big C++ focuses on practical program development and effective use of the C++ programming language. It is suitable for motivated beginners as well as students with prior programming experience. Horstmann and Budd combine their professional and academic experience to guide the student from the basics to more advanced topics and contemporary applications such as GUIs and XML programming. More than a reference, Big C++ provides well-developed exercises, examples, and case studies that engage students in the details of useful C++ applications.

Related Resources

Fundamental C++

Chapter 1 Introduction

Chapter 2 Numbers and Objects 

Chapter 3 Control Flow

Chapter 4 Functions

Chapter 5 Classes 

Chapter 6 Vectors and Arrays 

Chapter 7 Pointers 

Chapter 8 Inheritance 

Chapter 9 Streams 

Algorithms and Data Structures

Chapter 10 Recursion 

Chapter 11 Sorting and Searching 

Chapter 12 Lists, Queues, and Stacks 

Chapter 13 Sets, Maps, and Priority Queues 

Advanced C++

Chapter 14 Operator Overloading 

Chapter 15 Memory Management 

Chapter 16 Templates 

Chapter 17 Exception Handling 

Chapter 18 Name Scope Management 

Chapter 19 Class Hierarchies 

Chapter 20 The Standard Template Library 

Chapter 21 The C++ 0x Standard

OO Design

Chapter 22 Object-Oriented Design 

Chapter 23 The Unified Modeling Language 

Chapter 24 An Introduction to Design Patterns 


Chapter 25 Graphical User Interfaces

Chapter 26 Relational Databases (Web only)

Chapter 27 XML (Web only)


A C++ Language Coding Guidelines

B Keyword Summary

C Operator Summary

D Character Codes

E C++ Library Summary

F Number Systems

G Bit and Shift Operations

H UML Summary

I A C++/Java Comparison (web-only)



  • Common Errors describe the kinds of errors that programmers often make, with an explanation of why the errors occur, and what to do about them.
  • Quality Tips explain good programming practices. Since most of them require an initial investment of effort, these notes carefully motivate the reason behind the advice and explain why the effort will be repaid later.
  • Productivity Hints teach programmers how to use their tools more effectively, familiarizing them with tricks of the trade such as keyboard shortcuts, global search and replace, or automation of common tasks with scripts.
  • Learn computer science principles and not just C++ - The authors use the C++ programming language as a vehicle for introducing solid computer science concepts. Although it covers a large subset of the C++ language, the book focuses on the modern features of the C++ standard, such as the string class and the STL containers.
  • Gain a deeper understanding through the book?s spiral approach - The authors make C++ more accessible to beginners by starting with the essential facts that illustrate a concept, then adding technical details to deepen understanding of the foundational concept.
  • Learn C++ as an object-oriented language - Objects are introduced in two stages. From Chapter 2 on, readers learn to use objects?in particular, strings, streams, instances of the simple time and employee classes, and graphical shapes. Starting in Chapter 5, readers learn how to implement classes and member functions. From then on, objects and classes are used as the natural building blocks of computer programs.