‹‹ All zyBooks

Programming in C++


Frank Vahid

Professor of Computer Science and Engineering
Univ. of California, Riverside

Roman Lysecky

Professor of Electrical and Computer Engineering
Univ. of Arizona


  • Introduction to C++
  • Variables and Assignments
  • Branches
  • Loops
  • Vectors
  • User-Defined Functions
  • Objects and Classes
  • Pointers
  • Streams
  • Inheritance
  • Recursion
  • Exceptions
  • Templates

 Complete Table of Contents

Available with zyLabs


  • ~700 participation activities: Questions, animations, tools
  • 150+ auto-graded programming challenge activities using built-in programming environment
  • Includes focus on solid understanding of memory usage and pointers
  • Configurable sections support early/late introduction to functions and objects
  • Additional material includes arrays and structs
  • Web-based programming practice environment compiles and executes code in the zyBook

The zyBooks Approach

Our Programming C++ zyBook provides students with an interactive and engaging learning environment with a solid understanding of memory. From the moment variables are introduced, the material shows via animations how variables exist and are updated in memory. The continued showing of memory throughout helps clarify challenging topics like pass-by-copy/reference parameters, vectors/arrays, pointers, and more. Furthermore, the material includes emphasis on disciplined program development, including incremental development, modular development, and testing/debugging.

The Programming C++ zyBook can also be mix-and-matched with others, such as with Data Structures Essentials, Computing Technology for All, or with other programming language zyBooks.

“It is already clear that this represents the future of programming text books. Its basic expository content is the equal of any paper text, but it really shines in using the natural advantages of online vs. static teaching material ­ animation and interactivity ­ to excellent effect, giving the student an additional dimension of insight.”

– Brian Linard, Lecturer, UC Riverside