C++ Programming An Object-Oriented Approach – Behrouz A. Forouzan, Richard Gilberg – 1st Edition


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

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.

View more
  • Chapter 1: Introduction to Computers and Programming Languages
    Chapter 2: Basics of C++ Programming
    Chapter 3: Expressions and Statements
    Chapter 4: Selection
    Chapter 5: Repetition
    Chapter 6: Functions
    Chapter 7: User-Defined Types: Classes
    Chapter 8: Arrays
    Chapter 9: References, Pointers, and Memory Management
    Chapter 10: Strings
    Chapter 11: Relationships among Classes
    Chapter 12: Polymorphism and Other Issues
    Chapter 13: Operator Overloading
    Chapter 14: Exception Handling
    Chapter 15: Generic Programming: Templates
    Chapter 16: Input/Output Streams
    Chapter 17: Recursion
    Chapter 18: Introduction to Data Structures
    Chapter 19: Standard Template Library (STL)
    Chapter 20: Design Patterns

    Appendix A: Unicode
    Appendix B: Positional Numbering System
    Appendix C: C++ Expressions and Operators
    Appendix D: Bitwise Operations
    Appendix E: Bit Fields
    Appendix F: Preprocessing
    Appendix G: Namespaces
    Appendix H: Ratios
    Appendix I: Time
    Appendix J: Lambda Expressions
    Appendix K: Regular Expressions
    Appendix L: Smart Pointers
    Appendix M: Random Number Generation
    Appendix N: References
    Appendix O: Move versus Copy
    Appendix P: A Brief Review of C++ 11
    Appendix Q: Unified Modeling Language (UML)
    Appendix R: Bitset
  • Citation

Leave us a comment

No Comments

Notify of
Inline Feedbacks
View all comments
Would love your thoughts, please comment.x