Bjarne Stroustrup
C++#
Algorithms#
C++20#
C++23#
An Introduction to Programming by the Inventor of C++
Programming: Principles and Practice Using C++, Third Edition, will help anyone who is willing to work hard learn the fundamental principles of programming and develop the practical skills needed for programming in the real world. Previous editions have been used successfully by many thousands of students. This revised and updated edition
Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
Table of Contents
1 Hello, World!
2 Objects, Types, and Values
3 Computation
4 Errors!
5 Writing a Program
6 Completing a Program
7 Technicalities: Functions, etc.
8 Technicalities: Classes, etc.
9 Input and Output Streams
10 A Display Model
11 Graphics Classes
12 Class Design
13 Graphing Functions and Data
14 Graphical User Interfaces
15 Vector and Free Store
16 Arrays, Pointers, and References
17 Essential Operations
18 Templates and Exceptions
19 Containers and Iterators
20 Maps and Sets
21 Algorithms
Programming is the art of expressing solutions to problems so that a computer can execute those solutions. Much of the effort in programming is spent finding and refining solutions. Often, a problem is only fully understood through the process of programming a solution for it.
This book is for someone who has never programmed before but is willing to work hard to learn. It helps you understand the principles and acquire the practical skills of programming using the C++ programming language. It can also be used by someone with some programming knowledge who wants a more thorough grounding in programming principles and contemporary C++.
Code can be beautiful as well as useful. This book is written to help you to understand what it means for code to be beautiful, to help you to master the principles of creating such code, and to build up the practical skills to create it. Good luck with programming!
Bjarne Stroustrup is the designer and original implementer of C++, as well as the author of The C++ Programming Language (4th Edition), A Tour of C++ (3rd edition), Programming: Principles and Practice Using C++ (3rd Edition), and many popular and academic publications. He is a professor of Computer Science at Columbia University in New York City. Dr. Stroustrup is a member of the US National Academy of Engineering, and an IEEE, ACM, and CHM fellow. He received the 2018 Charles Stark Draper Prize, the IEEE Computer Society's 2018 Computer Pioneer Award, and the 2017 IET Faraday Medal.