text.skipToContent text.skipToNavigation
  1. Home
  2. Computer Science & IT
  3. Discovering Modern C++: An Intensive Course for Scientists, Engineers, and Programmers

Discovering Modern C++: An Intensive Course for Scientists, Engineers, and Programmers, 1st edition

  • Peter Gottschling

Published by Addison-Wesley Professional (December 17th 2015) - Copyright © 2016

1st edition

Chosen format
View all
Discovering Modern C++: An Intensive Course for Scientists, Engineers, and Programmers

ISBN-13: 9780134383583

Includes: Paperback
Free delivery
$49.99

What's included

  • Paperback

    You'll get a bound printed text.

Overview

  • Teaches scientists, engineers, and new C++ programmers how to use modern C++ effectively for a variety of applications and problem domains.
  • Shows correct clean modern C++ code
  • Deals with how to use C++ well without assuming a lot of familiarity with the language
  • Includes concise coverage of the newest C++ 14 features

Table of contents

Preface           xvii
Reasons to Learn C++     xvii

Reasons to Read This Book     xviii

The Beauty and the Beast     xviii

Languages in Science and Engineering     xix

Typographical Conventions     xx

 

Acknowledgments     xxiii

About the Author     xxv

 

Chapter 1: C++ Basics             1

1.1   Our First Program   1

1.2   Variables   3

1.3   Operators   10

1.4   Expressions and Statements   21

1.5   Functions   28

1.6   Error Handling   34

1.7   I/O   40

1.8   Arrays, Pointers, and References   47

1.9   Structuring Software Projects   58

1.10 Exercises   63

 

Chapter 2: Classes         65

2.1   Program for Universal Meaning Not for Technical Details   65

2.2   Members   67

2.3   Setting Values: Constructors and Assignments   72

2.4   Destructors   89

2.5   Method Generation Résumé   95

2.6   Accessing Member Variables   96

2.7   Operator Overloading Design   100

2.8   Exercises   104

 

Chapter 3: Generic Programming         107

3.1   Function Templates   107

3.2   Namespaces and Function Lookup   115

3.3   Class Templates   123

3.4   Type Deduction and Definition   131

3.5   A Bit of Theory on Templates: Concepts   136

3.6   Template Specialization   136

3.7   Non-Type Parameters for Templates   144

3.8   Functors   146

3.9   Lambda   154

3.10 Variadic Templates   159

3.11 Exercises   161

 

Chapter 4: Libraries         165

4.1   Standard Template Library   165

4.2   Numerics   186

4.3   Meta-programming   198

4.4   Utilities   202

4.5   The Time Is Now   209

4.6   Concurrency   211

For teachers

All the material you need to teach your courses.

Discover teaching material