Description
For introductory courses in computer programming
A Problem-Solving Approach to Programming
In Starting Out with C++: From Control Structures through Objects Gaddis takes a problem-solving approach, inspiring students to understand the logic behind developing quality programs while introducing the C++ programming language. This style of teaching builds programming confidence and enhances each student’s development of programming skills. This edition in the Starting Out With Series covers the core programming concepts that are introduced in the first semester introductory programming course. As with all Gaddis texts, clear and easy-to-read code listings, concise and practical real-world examples, and an abundance of exercises appear in every chapter. The 8th Edition is updated and revised to reflect changes to the C++ programming language.
Key Features
- Control structures, functions, arrays, and pointers are covered before objects and classes.
- A clear and student-friendly writing style simplifies programming processes for beginning programmers with two to three stepped-out examples following each major concept.
- Concise real-world examples that students understand and relate to foster motivation and retention.
- A variety of exercises in each chapter encourages students to put concepts to work as they are learned. Source code is provided so students can run the programs themselves.
- Case Studies, Programming Challenges, and Group Projects simulate real-world applications and present real-world problems to be solved.
- Tony Gaddis’s best-selling Starting Out With series of textbooks provides accessible, detailed presentations of programming concepts using an approach that will increase confidence and competence in novice programmers. The Starting Out With series includes books on Alice, Python, Visual Basic, C++, Java, and Programming Logic & Design. View other titles in the series at the Gaddis Books website.
New to this Edition
- NEW! The auto keyword is introduced as a way to simplify complex variable definitions. The auto keyword causes the compiler to infer a variable’s data type from its initialisation value.
- NEW! The long long int and unsigned long long int data types, and the LL literal suffix are introduced.
- NEW! Chapter 5 shows how to pass a string object directly to a file stream object’s open member function, without the need to call the c_str() member function. (A discussion of the c_str()function still exists for anyone using a legacy compiler.)
- NEW! The range-based for loop is introduced in Chapter 7. This new looping mechanism automatically iterates over each element of an array, vector, or other collection, without the need of a counter variable or a subscript.
- NEW! Chapter 7 shows how a vector can be initialised with an initialisation list.
- NEW! The nullptr keyword is introduced as the standard way of representing a null pointer.
- NEW! Smart pointers are introduced in Chapter 9, with an example of dynamic memory allocation using unique_ptr.
- NEW! Chapter 10 discusses the new, overloaded to_string functions for converting numeric values to string objects.
- NEW! The string class’s new back() and front() member functions are included in Chapter 10’s overview of the string class.
- NEW! Strongly typed enums are discussed in Chapter 11.
- NEW! Chapter 13 shows how to use the smart pointer unique_ptr to dynamically allocate an object.
- NEW! Chapter 15 discusses the override keyword and demonstrates how it can help prevent subtle overriding errors. The final keyword is discussed as a way of preventing a virtual member function from being overridden.
- NEW! Several new programming problems have been added to the text, and many of the existing programming problems have been modified to make them unique from previous editions.
- UPDATED! The discussion of early, historic computers in Chapter 1 is expanded.
- REVISED! The discussion of literal values in Chapter 2 is improved.
- UPDATED! The introduction of the char data type in Chapter 2 is reorganized to use character literals in variable assignments before using ASCII values in variable assignments.
Table of Contents
- Introduction to Computers and Programming
- Introduction to C++
- Expressions and Interactivity
- Making Decisions
- Loops and Files
- Functions
- Arrays
- Searching and Sorting Arrays
- Pointers
- Characters, C-Strings, and More About the string Class
- Structured Data
- Advanced File Operations
- Introduction to Classes
- More About Classes
- Inheritance, Polymorphism, and Virtual Functions
- Appendix A: Getting Started with Alice
- Appendix B: The ASCII Character Set
- Appendix C: Operator Precedence and Associativity
- Quick References
- Index
Author Biography
Tony Gaddis is the principal author of the Starting Out With series of textbooks. He has nearly 2 decades of experience teaching computer science courses, primarily at Haywood Community College. Tony is a highly acclaimed instructor who was previously selected as the North Carolina Community College Teacher of the Year, and has received the Teaching Excellence award from the National Institute for Staff and Organizational Development. The Starting Out With series includes introductory textbooks covering Programming Logic and Design, Alice, C++, JavaTM, Microsoft® Visual Basic®, Microsoft® Visual C#, Python and App Inventor, all published by Pearson.
Additional information
| Weight | 1.778 kg |
|---|
Only logged in customers who have purchased this product may leave a review.
Related Products








Reviews
There are no reviews yet.