Starting Out with C++: Early Objects
Book information
Description
For courses in C++ Programming. Fundamentals of C++ for Novices and Experienced Programmers Alike Intended for use in a two-term, three-term, or accelerated one-term C++ programming sequence, this Ninth Edition of Starting Out with C++: Early Objects introduces the fundamentals of C++ to novices and experienced programmers alike. In clear, easy-to-understand terms, the text introduces all of the necessary topics for beginning C++ programmers. Real-world examples allow readers to apply their knowledge in understanding how, why, and when to implement the features of C++. The text is organized in a progressive, step-by-step fashion that allows for flexibility. Building on the popularity of previous editions, the Ninth Edition has been updated and enhanced with new material, including C++11 topics and recent changes in technology. Front Cover Title Page Copyright Page Contents at a Glance CONTENTS Preface About the Authors 1. Introduction to Computers and Programming 1.1 Why Program 1.2 Computer Systems: Hardware and Software 1.3 Programs and Programming Languages 1.4 What Is a Program Made Of? 1.5 Input, Processing, and Output 1.6 The Programming Process 1.7 Tying It All Together: Hi! It's Me Review Questions and Exercises Programming Challenges 2. Introduction to C++ 2.1 The Parts of a C++ Program 2.2 The count Object 2.3 The #include Directive 2.4 Variables and the Assignment Statement 2.5 Literals 2.6 Identifiers 2.7 Integer Data Types 2.8 Floating-Point Data Tyes 2.9 The char Data Type 2.10 The C++ string Class 2.11 The bool Data Type 2.12 Determining the Size of a Data Type 2.13 More on Variable Assignments and Initialization 2.14 Scope 2.15 Arithmetic Operators 2.16 Comments 2.17 Programming Style 2.18 Tying It All Together: Smile! Review Questions and Exercises Programming Challenges 3. Expressions and Interactivity 3.1 The cin object 3.2 Mathematical Expressions 3.3 Data Types Conversion and Type Casting 3.4 Overflow and Underflow 3.5 Named Constants 3.6 Multiple and Combined Assignment 3.7 Formatting Output 3.8 Working with Characters and Strings 3.9 More Mathematical Library Functions 3.10 Random Numbers 3.11 Focus on Debugging: Hand Tracing a Program 3.12 Green Fields Landscaping Case Study-Part 1 3.13 Tying It All Together: Word Game Review Questions and Exercises Programming Challenges 4. Making Decisions 4.1 Relational Operators 4.2 The if Statement 4.3 The if/else Statement 4.4 The if/else if Statement 4.5 Menu-Driven Programs 4.6 Nested if Statements 4.7 Logical Operators 4.8 Validating User Input 4.9 More about Blocks and Scope 4.10 More about Characters and Strings 4.11 The Conditional Operator 4.12 The switch Statement 4.13 Enumerated Data Types 4.14 Focus on Testing and Debugging: Validating Output Results 4.15 Green Fields Landscaping Case Study-Part 2 4.16 Tying It All Together: Fortune Teller Review Questions and Exercises Programming Challenges 5. Looping 5.1 Introduction to Loops: The while Loop 5.2 Using the while Loop for Input Validation 5.3 The Increment and Decrement Operators 5.4 Counters 5.5 Keeping a Running Total 5.6 Sentinels 5.7 The do-while Loop 5.8 The for Loop 5.9 Focus on Software Engineering: Deciding Which Loop to Use 5.10 Nested Loops 5.11 Breaking Out of a Loop 5.12 Using Files for Data Storage 5.13 Focus on Testing and Debugging: Creating Good Test Data 5.14 Central Mountain Credit Union Case Study 5.15 Tying It All Together: What a Colorful World Review Questions and Exercises Programming Challenges 6. Functions 6.1 Modular Programming 6.2 Defining and Calling Functions 6.3 Function Prototypes 6.4 Sending Data into a Function 6.5 Passing Data by Value 6.6 The return Statement 6.7 Returning a Value from a Function 6.8 Returning a Boolean Value 6.9 Using Functions in a Menu-Driven Program 6.10 Local and Global Variables 6.11 Static Local Values 6.12 Default Arguments 6.13 Using Reference Variables as Parameters 6.14 Overloading Functions 6.15 The exit() Function 6.16 Stubs and Drivers 6.17 Little Lotto Case Study 6.18 Tying It All Together: Glowing Jack-o-lantern Review Questions and Exercises Programming Challenges 7. Introduction to Classes and Objects 7.1 Abstract Data Types 7.2 Object-Oriented Programming 7.3 Introduction to Classes 7.4 Creating and Using Objects 7.5 Defining Member Functions 7.6 Constructors 7.7 Destructors 7.8 Private Member Functions 7.9 Passing Objects to Functions 7.10 Object Composition 7.11 Focus on Software Engineering: Seperating Class Specification, Implementation, and Client Code 7.12 Structures 7.13 More about Enumerated Data Types 7.14 Home Software Company OOP Case Study 7.15 Introduction to Object-Oriented Analysis and Design 7.16 Screen Control 7.17 Tying It All Together: Yoyo Animation Review Questions and Exercises Programming Challenges 8. Arrays 8.1 Arrays Hold Multiple Values 8.2 Accessing Array Elements 8.3 Inputting and Displaying Array Data 8.4 Array Initialization 8.5 The Range-Based for Loop 8.6 Processing Array Contents 8.7 Using Parallel Arrays 8.8 The typedef Statement 8.9 Arrays Function Arguments 8.10 Two-Dimensional Arrays 8.11 Arrays with Three or More Dimensions 8.12 Vectors 8.13 Arrays of Objects 8.14 National Commerce Bank Case Study 8.15 Tying It All Together: Rock, Paper, Scissors Review Questions and Exercises Programming Challenges 9. Searching, Sorting, and Algorithm Analysis 9.1 Introduction to Search Algorithms 9.2 Searching an Array of Objects 9.3 Introduction to Sorting Algorithms 9.4 Sorting an Array of Objects 9.5 Sorting and Searching Vectors 9.6 Introduction to Analysis of Algorithms 9.7 Case Studies 9.8 Tying It All Together: Secret Messages Review Questions and Exercises Programming Challenges 10. Pointers and the Address Oerator 10.1 Pointers and the Address Operator 10.2 Pointer Variables 10.3 The Relationship Between Arrays and Pointers 10.4 Pointer Arithmetic 10.5 Initializing Pointers 10.6 Comparing Pointers 10.7 Pointers as Function Parameters 10.8 Pointers to Constants and Constant Pointers 10.9 Focus on Software Engineering: Dynamic Memory Allocation 10.10 Focus on Software Engineering: Returning Pointers from Functions 10.11 Pointers to Class Objects and Structures 10.12 Focus on Software Engineering: Selecting Members of Objects 10.13 Smart Pointers 10.14 Tying It All Together: Pardon Me, Do You Have the Time? Review Questions and Exercises Programming Challenges 11. More about Classes and Object-Oriented Programming 11.1 The this Pointer and Constant Member Functions 11.2 Static Members 11.3 Friends of Classes 11.4 Memberwise Assignment 11.5 Copy Constructors 11.6 Operator Overloading 11.7 Rvalue References and Move Operations 11.8 Function Objects and Lambda Expressions 11.9 Type Conversion Operators 11.10 Convert Constructors 11.11 Aggregation and Composition 11.12 Inheritance 11.13 Protected Members and Class Access 11.14 Constructors, Destructors, and Inheritance 11.15 Overriding Base Class Functions 11.16 Tying It All Together: Putting Data on the World Wide Web Review Questions and Exercises Programming Challenges 12. More on C-Strings and the string Class 12.1 C-Strings 12.2 Library Functions for Working with C-Strings 12.3 Converstions Between Numbers and Strings 12.4 Writng Your Own C-String Handling Functions 12.5 More about the C++ string Class 12.6 Advanced Software Enterprises Case Study 12.7 Tying It All Together: Program Execution Environments Review Questions and Exercises Programming Challenges 13. Advanced File and I/O Operations 13.1 Input and Output Streams 13.2 More Detailed Error Testing 13.3 Member Functions for Reading and Writing Files 13.4 Binary Files 13.5 Creating Records with Structures 13.6 Random-Access Files 13.7 Opening a File for Both Input and Output 13.8 Online Friendship Connections Case Study: Object Serialization 13.9 Tying It All Together: File Merging and Color-Coded HTML Review Questions and Exercises Programming Challenges 14. Recursion 14.1 Introduction to Recursion 14.2 The Recursive Factorial Function 14.3 The Recursive gcd Function 14.4 Solving Recursively Defined Problems 14.5 A Recursive Binary Search Function 14.6 Focus on Problem Solving and Program Design: The QuickSort Algorithm 14.7 The Towers of Hanoi 14.8 Focus on Problem Solving: Exhaustive and Enumeration Algorithms 14.9 Focus on Software Engineering: Recursion versus Iteration 14.10 Tying It All Together: Infix and Prefix Expressions Review Questions and Exercises Programming Challenges 15. Polymorphism and Virtual Functions 15.1 Type Compatibility in Inheritance Hierarchies 15.2 Polymorphism and Virtual Member Functions 15.3 Abstract Base Classes and Pure Virtual Functions 15.4 Focus on Object-Oriented Programming: Composition versus Inheritance 15.5 Secure Encryption Systems, Inc., Case Study 15.6 Tying It All Together: Let's Move It Review Questions and Exercises Programming Challenges 16. Exceptions, Templates, and the Standard Template Library (STL) 16.1 Exceptions 16.2 Fucntion Templates 16.3 Class Templates 16.4 Class Templates and Inheritance 16.5 Introduction to the Standard Template Library 16.6 Tying It All Together: Word Transformers Game Review Questions and Exercises Programming Challenges 17. Linked Lists 17.1 Introduction to the Linked List ADT 17.2 Linked List Operations 17.3 A Linked List Template* 17.4 Recursive Linked List Operations 17.5 Variations of the Linked List 17.6 The STL list Container* 17.7 Reliable Software Systems, Inc., Case Study 17.8 Tying It All Together: More on Graphics and Animation Review Questions and Exercises Programming Challenges 18. Stacks and Queues 18.1 Introduction to the Stack ADT 18.2 Dynamic Stacks 18.3 The STL stack Container* 18.4 Introduction to the Queue ADT 18.5 Dynamic Queues 18.6 The STL deque and queue Containers* 18.7 Focus on Problem Solving and Program Design: Eliminating Recursion 18.8 Tying It All Together: Converting Postfix Expressions to Infix Review Questions and Exercises Programming Challenges 19. Binary Trees 19.1 Definition and Applications of Binary Trees 19.2 Binary Search Tree Operations 19.3 Template Considerations for Binary Search Trees 19.4 Tying It All Together: Genealogy Trees Review Questions and Exercises Programming Challenges APPENDICES A: The ASCII Character Set B: Operator Precedence and Associativity C: Answers to Checkpoints 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 - 19 D: Answers to Odd-Numbered Review Questions 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 INDEX Symbols and Numerics A B C D - E F G H - I J - K - L M - N O P Q R S T U V W Location of Videonotes in the Text C++ Quick Reference
Similar books
Starting out with C++ : early objects
2011 · PDF
MySQL® Notes for Professionals book
2018 · PDF
MrExcel 2022: Boosting Excel
2022 · PDF
MrExcel 2022: Boosting Excel
2022 · PDF
Session C11: Ancient Cultural Landscapes in South Europe – their Ecological Setting and Evolution, Session C22: Gardeners from South America, Session S04: Agro-Pastoralism and Early Metallurgy Sessions, Session WS29: The Idea of Enclosure in Recent Iberian Prehistory, Session C88: Rhytmes et causalites des dynamiques de l'anthropisation en Europe entre 6500 ET 500 BC: Hypotheses socio-culturelles et/ou climatiques: Proceedings of the XV UISPP World Congress (Lisbon 4-9 September 2006) / Actes du XV Congrès Mondial (Lisbonne 4-9 Septembre 2006) Vol.36
2010 · PDF
THE BRITISH ARMY IN INDIA: ITS PRESERVATION BY AN APPROPRIATE CLOTHING, HOUSING, LOCATING, RECREATIVE EMPLOYMENT, AND HOPEFUL ENCOURAGEMENT OF THE TROOPS. with AN APPENDIX ON INDIA : THE CLIMATE OP ITS HILLS ; THE DEVELOPMENT OF ITS RESODRCBS, INDUSTRY, AND ARTS ; THE ADMINISTRATION OF JUSTICE ; THE BLACK ACT ; THE PROGRESS OF CHRISTIANITY ; THE TRAFFIC IN OPIUM ; THE VALUE OF INDIA ; PERMANENT CAUSES OF DISAFFECTION, AND OF THE RECENT REBELLION ; THE TRADITIONARY POLICY; MISGOVERNMENT BY NATIVE RULERS ; ANNEXATIONS OF THEIR TERRITORY, ETC.
1858 · PDF
Idries Shah 27 Books Collection : A Perfumed Scorpion, A Veiled Gazelle, Caravan of Dreams, Darkest England, Destination Mecca, Evenings with Idries Shah, Knowing How to Know, Learning How to Learn, Letters and Lectures of Idries Shah, Neglected aspects of Sufi study, Observations, Oriental Magic, Reflections, Seeker after Truth, Special Illumination, Special Problems in the study of Sufi ideas, Sufi thought and action, Tales of the Dervishes, The Dermis Probe, The Elephant in the Dark, The Englishman Handbook, Idries Shah Antology, The Magic Monastery, The natives are restless, wisdom of the Idiots PDF.
2022 · PDF
The travels of Capts. Lewis and Clarke from St. Louis, by way of the Missouri and Columbia rivers, to the Pacific ocean; performed in the years 1804, 1805 & 1806, by order of the government of the United States. Containing delineations of the manners, customs, religion, &c. of the Indians, comp. from various authentic sources, and original documents, and a summary of the Statistical view of the Indian nations, from the official communication of Meriwether Lewis. Illustrated with a map of the country, inhabited by the western tribes of Indians
1809 · PDF