"

Preface

Hussam Ghunaim, Ph.D.

Preface:

This book is written as an Open Education Resource (OER) to replace expensive commercial materials currently used at the Department of Computer Science at Fort Hays State University. It has two volumes corresponding to the CSCI 121 and CSCI 221 courses. These courses are developed to introduce college freshmen students to Object-Oriented Programming utilizing C++.

The author tried to bridge the gap in the current programming textbooks by avoiding lengthy and, on many occasions, unnecessary details. This book’s main feature is to present the discussed principles in the least wording possible while providing adequate examples and exercises to reinforce students’ learning.  The text is kept as simple as possible, while efforts have been made to create practical and fun examples and exercises to increase the attractiveness of the material and its suitability for the targeted audience.

The book emphasizes a step-by-step learning process with numerous practical, working code examples that students can easily experiment with. Complex topics are explained using visual aids and intuitive analogies to foster deeper understanding. The book employs a gradual introduction of concepts, building upon previously learned material in a logical progression. Visual diagrams are used extensively to illustrate abstract concepts. Problem-solving is a central focus, with each chapter including exercises designed to challenge students to apply their knowledge and develop their analytical skills.

All the code was written utilizing Visual Studio 2022, although other compatible compilers, including online compilers, should function similarly. To aid learning, the text employs color coding for C++ keywords and data types, mirroring the Visual Studio environment. Therefore, all codes are presented as images to preserve the Visual Studio coding color scheme. A similar coding scheme is used in the main text to help first-time programmers distinguish the code keywords from the main text.

Recognizing the value of hands-on practice, students are strongly encouraged to input and test all provided code examples and exercises manually. The book is further enriched with numerous examples and exercises with their solutions provided at the end of each chapter. Additional chapter-end exercises and programming projects are also provided to solidify learning and aid in self-assessment and learning.

How to Use This Book:

It is recommended that students work through the chapters of this book sequentially, as each chapter builds upon the foundational knowledge presented in earlier sections. My hope is that this book will make learning C++ accessible, engaging, and even enjoyable for students. I believe that with a focused effort and by working through the material presented here, students will not only grasp the fundamentals of this powerful language but also develop a strong foundation for future studies and endeavors in computer science.

Embrace the challenge, be curious, and happy coding!

Acknowledgments:

I would like to thank Dr. Kwake and Dr. Zeng for invaluable feedback and support during the writing and reviewing process. Their insights and suggestions significantly improved the clarity and accuracy of the content.

Note: All images used in this textbook were copied from the royalty-free repository Pixabay at https://pixabay.com/

License

Icon for the Creative Commons Attribution 4.0 International License

Introduction to C++ ( Volume I ) Copyright © 2025 by Hussam Ghunaim, Ph.D. is licensed under a Creative Commons Attribution 4.0 International License, except where otherwise noted.