C++ Programming: An Object-Oriented Approach

  • 10h 10m
  • Behrouz A. Forouzan, Richard F. Gilberg
  • McGraw-Hill
  • 2020

C++ Programming: An Object-Oriented Approach has two primary objectives: to teach the basic principles of programming as outlined in the ACM curriculum for a CS1 class and to teach the basic constructs of the C++ language. While C++ is a complex and professional language our experience has shown that beginning students can easily understand and use it.

C++ Programming: An Object-Oriented Approach uses a combination of thorough well-ordered explanations and a strong visual framework to make programming concepts accessible to students. The authors stress incremental program development wherein program analysis is followed by building a structure chart constructing UML flow diagrams writing algorithms undertaking program design and finally testing. This foundation combined with a focus on the benefits of a consistent and well-documented programming style prepares students to tackle the academic and professional programming challenges they will encounter down the road with confidence.

About the Authors

Behrouz A. Forouzan is a Professor at DeAnza College where he is involved in the development of Computer Information System courses. In addition he provides system development consulting with several companies. In addition to C and C++ books, Forouzan is the author of several other successful books, including Computer Networks: A Top-Down Approach, TCP/IP Protocol Suite, and Local Area Networks.

Richard F. Gilberg is a retired Professor of Computer Science from DeAnza College where his classes were primarily in computer programming, data structures, and web site development. Prior to joining DeAnza College, Mr. Gilberg worked for a large aerospace company as a programmer, analyst, and manager. He has co-authored six computer science textbooks with Mr. Forouzan.

In this Book

  • Introduction to Computers and Programming Languages
  • Basics of C++ Programming
  • Expressions and Statements
  • Selection
  • Repetition
  • Functions
  • User-Defined Types—Classes
  • Arrays
  • References, Pointers, and Memory Management
  • Strings
  • Relationships among Classes
  • Polymorphism and other Issues
  • Operator Overloading
  • Exception Handling
  • Generic Programming—Templates
  • Input/Output Streams
  • Recursion
  • Introduction to Data Structures
  • Standard Template Library (STL)