C++ Programming Language, The

Bjarne Stroustrup  
Mai 2013
Related Titles


Artikel Preis SFr Verfügbar  
C++ Programming Language, The


The definitive book on C++ by the creator of C++, The C++ Programming Language teaches one of the most widely-used, general-purpose programming languages. At an advanced pace this book teaches how to work with compilers updated for the new standard. Students heading toward domains where mid-size to large applications are being developed - networking, finance, graphics, and games - will find this book an excellent learning tool.


  • Exercises are available at the author's web site for the book, http://www.stroustrup.com/4th.html.
  • Makes C++11 thoroughly accessible to programmers moving from C++98 or other languages, while introducing insights and techniques that even cutting-edge C++11 programmers will find indispensable
  • New C++11 includes support for concurrency, regular expressions, general and uniform initialization, lambdas, compatibility issues, and much more
  • This book features an enhanced, layflat binding, which allows the book to stay open more easily when placed on flat surface and increases durability
  • This book is also available in hardcover. The ISBN for the hardcover is 9780321958327.

New to this Edition

  • Fully re-written for the C++11 standard
  • Support for concurrency
  • Regular expressions, resource management pointers, random numbers, and improved containers
  • General and uniform initialization, simplified for-statements, move semantics, and Unicode support
  • Lambdas, general constant expressions, control over class defaults, variadic templates, template aliases, and user-defined literals
  • Compatibility issues 

Table of Contents

Preface to the Fourth Edition v

Preface to the Third Edition ix

Preface to the Second Edition xi

Preface to the First Edition xii


Part I: Introductory Material 1

Chapter 1: Notes to the Reader 3

Chapter 2: A Tour of C++: The Basics 37

Chapter 3: A Tour of C++: Abstraction Mechanisms 59

Chapter 4: A Tour of C++: Containers and Algorithms 87

Chapter 5: A Tour of C++: Concurrency and Utilities 111


Part II: Basic Facilities 133

Chapter 6: Types and Declarations 135

Chapter 7: Pointers, Arrays, and References 171

Chapter 8: Structures, Unions, and Enumerations 201

Chapter 9: Statements 225

Chapter 10: Expressions 241

Chapter 11: Select Operations 273

Chapter 12: Functions 305

Chapter 13: Exception Handling 343

Chapter 14: Namespaces 389

Chapter 15: Source Files and Programs 419


Part III: Abstraction Mechanisms 447

Chapter 16: Classes 449

Chapter 17: Construction, Cleanup, Copy, and Move 481

Chapter 18: Overloading 527

Chapter 19: Special Operators 549

Chapter 20: Derived Classes 577

Chapter 21: Class Hierarchies 613

Chapter 22: Run-Time Type Information 641

Chapter 23: Templates 665

Chapter 24: Generic Programming 699

Chapter 25: Specialization 721

Chapter 26: Instantiation 741

Chapter 27: Templates and Hierarchies 759

Chapter 28: Metaprogramming 779

Chapter 29: A Matrix Design 827


Part IV: The Standard Library 857

Chapter 30: Standard Library Summary 859

Chapter 31: STL Containers 885

Chapter 32: STL Algorithms 927

Chapter 33: STL Iterators 953

Chapter 34: Memory and Resources 973

Chapter 35: Utilities 1009

Chapter 36: Strings 1033

Chapter 37: Regular Expressions 1051

Chapter 38: I/O Streams 1073

Chapter 39: Locales 1109

Chapter 40: Numerics 1159

Chapter 41: Concurrency 1191

Chapter 42: Threads and Tasks 1209

Chapter 43: The C Standard Library 1253

Chapter 44: Compatibility 1267


Index 1281


Bjarne Stroustrup (www.stroustrup.com) is the designer and original implementer of C++, as well as the author of Programming: Principles and Practice Using C++ (Addison-Wesley, 2009), The C++ Programming Language (Addison-Wesley, 1985, 1991, 1997, 2000), and many popular and academic publications. Dr. Stroustrup is a University Distinguished Professor at Texas A&M University and the holder of the College of Engineering Chair in Computer Science. He is a member of the U.S. National Academy of Engineering, an IEEE Fellow, and an ACM fellow. His research interests include distributed systems, design, programming techniques, software development tools, and programming languages. He is actively involved in the ISO standardization of C++.