Learning C++

by Stack Overflow Community

DescriptionTable of ContentsDetailsHashtagsReport an issue

Book Description

C++ is a general-purpose programming language as an extension of the C programming language, or "C with Classes". It is an unofficial and free C++ ebook created for educational purposes. All the content is extracted from Stack Overflow Documentation, which is written by many hardworking individuals at Stack Overflow.

This open book is licensed under a Creative Commons License (CC BY-SA). You can download Learning C++ ebook for free in PDF format (5.3 MB).

Table of Contents

Chapter 1
Getting started with C++
 
Chapter 2
Alignment
 
Chapter 3
Argument Dependent Name Lookup
 
Chapter 4
Arithmitic Metaprogramming
 
Chapter 5
Arrays
 
Chapter 6
Atomic Types
 
Chapter 7
Attributes
 
Chapter 8
auto
 
Chapter 9
Basic input/output in c++
 
Chapter 10
Basic Type Keywords
 
Chapter 11
Bit fields
 
Chapter 12
Bit Manipulation
 
Chapter 13
Bit Operators
 
Chapter 14
Build Systems
 
Chapter 15
C incompatibilities
 
Chapter 16
C++ Containers
 
Chapter 17
C++ Debugging and Debug-prevention Tools & Techniques
 
Chapter 18
C++ function "call by value" vs. "call by reference"
 
Chapter 19
C++ Streams
 
Chapter 20
C++11 Memory Model
 
Chapter 21
Callable Objects
 
Chapter 22
Classes/Structures
 
Chapter 23
Client server examples
 
Chapter 24
Common compile/linker errors (GCC)
 
Chapter 25
Compiling and Building
 
Chapter 26
Concurrency With OpenMP
 
Chapter 27
Const Correctness
 
Chapter 28
const keyword
 
Chapter 29
Constant class member functions
 
Chapter 30
constexpr
 
Chapter 31
Copy Elision
 
Chapter 32
Copying vs Assignment
 
Chapter 33
Curiously Recurring Template Pattern (CRTP)
 
Chapter 34
Data Structures in C++
 
Chapter 35
Date and time using header
 
Chapter 36
decltype
 
Chapter 37
Design pattern implementation in C++
 
Chapter 38
Digit separators
 
Chapter 39
Enumeration
 
Chapter 40
Exceptions
 
Chapter 41
Explicit type conversions
 
Chapter 42
Expression templates
 
Chapter 43
File I/O
 
Chapter 44
Floating Point Arithmetic
 
Chapter 45
Flow Control
 
Chapter 46
Fold Expressions
 
Chapter 47
Friend keyword
 
Chapter 48
Function Overloading
 
Chapter 49
Function Template Overloading
 
Chapter 50
Futures and Promises
 
Chapter 51
Header Files
 
Chapter 52
Implementation-defined behavior
 
Chapter 53
Inline functions
 
Chapter 54
Inline variables
 
Chapter 55
Internationalization in C++
 
Chapter 56
Iteration
 
Chapter 57
Iterators
 
Chapter 58
Keywords
 
Chapter 59
Lambdas
 
Chapter 60
Layout of object types
 
Chapter 61
Linkage specifications
 
Chapter 62
Literals
 
Chapter 63
Loops
 
Chapter 64
Memory management
 
Chapter 65
Metaprogramming
 
Chapter 66
More undefined behaviors in C++
 
Chapter 67
Move Semantics
 
Chapter 68
mutable keyword
 
Chapter 69
Mutexes
 
Chapter 70
Namespaces
 
Chapter 71
Non-Static Member Functions
 
Chapter 72
One Definition Rule (ODR)
 
Chapter 73
Operator Overloading
 
Chapter 74
operator precedence
 
Chapter 75
Optimization
 
Chapter 76
Optimization in C++
 
Chapter 77
Overload resolution
 
Chapter 78
Parameter packs
 
Chapter 79
Perfect Forwarding
 
Chapter 80
Pimpl Idiom
 
Chapter 81
Pointers
 
Chapter 82
Pointers to members
 
Chapter 83
Polymorphism
 
Chapter 84
Preprocessor
 
Chapter 85
Profiling
 
Chapter 86
RAII: Resource Acquisition Is Initialization
 
Chapter 87
Random number generation
 
Chapter 88
Recursion in C++
 
Chapter 89
Recursive Mutex
 
Chapter 90
Refactoring Techniques
 
Chapter 91
References
 
Chapter 92
Regular expressions
 
Chapter 93
Resource Management
 
Chapter 94
Return Type Covariance
 
Chapter 95
Returning several values from a function
 
Chapter 96
RTTI: Run-Time Type Information
 
Chapter 97
Scopes
 
Chapter 98
Semaphore
 
Chapter 99
SFINAE (Substitution Failure Is Not An Error)
 
Chapter 100
Side by Side Comparisons of classic C++ examples solved via C++ vs C++11 vs C++14 vs C++17
 
Chapter 101
Singleton Design Pattern
 
Chapter 102
Smart Pointers
 
Chapter 103
Sorting
 
Chapter 104
Special Member Functions
 
Chapter 105
Standard Library Algorithms
 
Chapter 106
static_assert
 
Chapter 107
std::any
 
Chapter 108
std::array
 
Chapter 109
std::atomics
 
Chapter 110
std::forward_list
 
Chapter 111
std::function: To wrap any element that is callable
 
Chapter 112
std::integer_sequence
 
Chapter 113
std::iomanip
 
Chapter 114
std::map
 
Chapter 115
std::optional
 
Chapter 116
std::pair
 
Chapter 117
std::set and std::multiset
 
Chapter 118
std::string
 
Chapter 119
std::variant
 
Chapter 120
std::vector
 
Chapter 121
Storage class specifiers
 
Chapter 122
Stream manipulators
 
Chapter 123
Templates
 
Chapter 124
The ISO C++ Standard
 
Chapter 125
The Rule of Three, Five, And Zero
 
Chapter 126
The This Pointer
 
Chapter 127
Thread synchronization structures
 
Chapter 128
Threading
 
Chapter 129
Trailing return type
 
Chapter 130
type deduction
 
Chapter 131
Type Erasure
 
Chapter 132
Type Inference
 
Chapter 133
Type Keywords
 
Chapter 134
Type Traits
 
Chapter 135
Typedef and type aliases
 
Chapter 136
Undefined Behavior
 
Chapter 137
Unions
 
Chapter 138
Unit Testing in C++
 
Chapter 139
Unnamed types
 
Chapter 140
Unspecified behavior
 
Chapter 141
User-Defined Literals
 
Chapter 142
Using declaration
 
Chapter 143
Using std::unordered_map
 
Chapter 144
Value and Reference Semantics
 
Chapter 145
Value Categories
 
Chapter 146
Variable Declaration Keywords
 
Chapter 147
Virtual Member Functions
 

Book Details

Subject
Computer Science
Publisher
RIP Tutorial
Published
2019
Pages
897
Edition
1
Language
English
PDF Size
5.3 MB
License
CC BY-SA

Related Books

Learn Programming
This book is aimed at readers who are interested in software development but have very little to no prior experience. The book focuses on teaching the core principles around software development. It uses several technologies to this goal (e.g. C, Python, JavaScript, HTML, etc.) but is not a book about the technologies themselves. The reader will le...
The Troika of Adult Learners, Lifelong Learning, and Mathematics
This book presents a synopsis of six emerging themes in adult mathematics/numeracy and a critical discussion of recent developments in terms of policies, provisions, and the emerging challenges, paradoxes and tensions. It also offers an extensive review of the literature adult mathematics education. Why do adults want to learn mathematics? Did they...
Research on Teaching and Learning Probability
This book summarizes the vast amount of research related to teaching and learning probability that has been conducted for more than 50 years in a variety of disciplines. It begins with a synthesis of the most important probability interpretations throughout history: intuitive, classical, frequentist, subjective, logical propensity and axiomatic vie...
International Comparative Studies in Mathematics
It argues that the main purpose of educational research is to improve student learning, and that international comparative studies are no exception....
Inquiry-Based Learning - Undergraduate Research
This book provides a systematic overview of experiences with Inquiry-Based Learning (IBL) and undergraduate research (UR) in German universities, covering both research universities (Universitäten) and universities of applied sciences (Fachhochschulen). Divided into three parts, the book starts with the principles and common practices of IBL/UR at...
Global Perspectives on Recognising Non-formal and Informal Learning
This book deals with the relevance of recognition and validation of non-formal and informal learning in education and training, the workplace and society. In an increasing number of countries, it is at the top of the policy and research agenda ranking among the possible ways to redress the glaring lack of relevant academic and vocational qualificat...