C++ programming tutorial for professionals

Download free C++ language tutorial course in PDF, training file in 146 chapters and 708 pages. Free unaffiliated ebook created from Stack OverFlow contributor.

Table of contents

  • About
  • Getting started with C++
  • Hello World
  • Comments
  • The standard C++ compilation process
  • Function
  • Visibility of function prototypes and declarations
  • Preprocessor
  • Literals
  • this
  • Integer literal
  • true
  • false
  • nullptr
  • operator precedence
  • Logical && and || operators: short-circuit
  • Unary Operators
  • Arithmetic operators
  • Logical AND and OR operators
  • Floating Point Arithmetic
  • Floating Point Numbers are Weird
  • Bit Operators
  • | - bitwise OR
  • ^ - bitwise XOR (exclusive OR)
  • & - bitwise AND
  • << - left shift
  • >> - right shift
  • Bit Manipulation
  • Remove rightmost set bit
  • Set all bits
  • Toggling a bit
  • Checking a bit
  • Counting bits set
  • Check if an integer is a power of 2
  • Setting a bit
  • Clearing a bit
  • Changing the nth bit to x
  • Bit Manipulation Application: Small to Capital Letter
  • Bit ?elds
  • Declaration and Usage
  • Arrays
  • Array initialization
  • A ?xed size raw array matrix (that is, a 2D raw array)
  • Dynamically sized raw array
  • Array size: type safe at compile time
  • Expanding dynamic size array by using std::vector
  • Literals
  • Floating Point Arithmetic
  • Bit Manipulation
  • Arrays
  • Basic input/output in c++
  • File I/O
  • Stream manipulators
  • Metaprogramming
  • mutable keyword
  • Type Keywords
  • Variable Declaration Keywords
  • Returning several values from a function
  • References
  • C++ function "call by value" vs. "call by reference"
  • Pointers
  • The This Pointer
  • Classes/Structures
  • Operator Overloading
  • Virtual Member Functions
  • Special Member Functions
  • Constant class member functions
  • Namespaces
  • Using declaration
  • std::array
  • std::map
  • std::function: To wrap any element that is callable
  • std::pair
  • std::variant
  • std::any
  • std::integer_sequence
  • Standard Library Algorithms
  • The ISO C++ Standard
  • Inline variables
  • Random number generation
  • Date and time using <chrono> header
  • Sorting
  • Enumeration
  • Iteration
  • Regular expressions
  • Implementation-defined behavior
  • Exceptions
  • Lambdas
  • Value Categories
  • Preprocessor
  • Data Structures in C++
  • Templates
  • Expression templates
  • Curiously Recurring Template Pattern (CRTP)
  • Threading
  • Thread synchronization structures
  • The Rule of Three, Five, And Zero
  • RAII: Resource Acquisition Is Initialization
  • RTTI: Run-Time Type Information
  • Mutexes
  • Recursive Mutex
  • Semaphore
  • Futures and Promises
  • Atomic Types
  • Type Erasure
  • Explicit type conversions
  • Unnamed types
  • Type Traits
  • Return Type Covariance
  • Layout of object types
  • Type Inference
  • Typedef and type aliases
  • type deduction
  • Trailing return type
  • Alignment
  • Perfect Forwarding
  • decltype
  • SFINAE (Substitution Failure Is Not An Error)
  • Undefined Behavior
  • Overload resolution
  • Move Semantics
  • Pimpl Idiom
  • auto
  • Copy Elision
  • Fold Expressions
  • Unions
  • Design pattern implementation in C++
  • Singleton Design Pattern
  • User-Defined Literals
  • Memory management
  • C++11 Memory Model
  • Scopes
  • static_assert
  • constexpr
  • One Definition Rule (ODR)
  • Unspecified behavior
  • Argument Dependent Name Lookup
  • Attributes
  • Recursion in C++
  • Arithmitic Metaprogramming
  • Callable Objects
  • Client server examples
  • Const Correctness
  • Parameter packs
  • Build Systems
  • Concurrency With OpenMP
  • Resource Management
  • Storage class specifiers
  • Linkage specifications
  • Digit separators
  • C incompatibilities
  • Side by Side Comparisons of classic C++ examples solved via C++ vs C++11 vs C++14 vs C++17
  • Compiling and Building
  • Common compile/linker errors (GCC)
  • More undefined behaviors in C++
  • Unit Testing in C++
  • C++ Debugging and Debug-prevention Tools & Techniques
  • Optimization in C++
  • Optimization
  • Profiling
  • Refactoring Techniques

It is a free C++ language ebook created for beginners. The content is extracted from Stack Overflow pltaform, which is written by many C++ language developers and contributors.

The content is released under Creative Commons BY-SA

Size : 4.88 MB
File type : pdf
Downloads: 432
Created: 2019-04-30

Others C++ language Tutorials

C++ Exercices with solutions

C++ Programming Language

Others related eBooks about C++ programming tutorial for professionals

Exploring .NET Core with Microservices, ASP.NET Core, and Entity Framework Core

Windows developers have always enjoyed the productivity boost you get with the .NET platfo..., download free .NET tutorial in PDF (155 pages) created by ....

100 Laravel Quick Tips

Download free course 100 Laravel Quick Tips, pdf file on 41 pages by Self-publishing3...

Effective AWK Programming

Download free course Effective AWK Programming, pdf file on 572 pages by Arnold Robbins....

Ruby programming tutorial

Download free Ruby tutorial course in PDF, training file in 69 chapters and 235 pages. Free unaffiliated ebook created from Stack OverFlow contributor....

Automate the Boring Stuff with Python: Practical Programming for Total Beginners

If you've ever spent hours renaming files or updating hundreds of spreadsheet cells, you know how tedious tasks like these can be. But what if you could have your computer do them for you? ...

The Boost C++ Libraries

This book is an introduction to the Boost C++ Libraries. The Boost C++ Libraries complement the C++ standard and add many practical tools that can be of use to any C++ developer and in any C++ project. Because the Boost C++ Libraries are based on the C++ standard, they are implemented using state-...

Java for Small Teams

This book is an attempt to capture what good Java code looks like and the practices that help produce it. This document is intended for consumption by anyone involved with writing server side Java code. From developers writing Java for the first time through to seasoned technical leads serving multi...

Programming in Fortran 95

Download Fortran 95 course, PDF tutorial for beginners to learn the basics of Fortran programming language....

Modeling and Simulation in Python

Modeling and Simulation in Python is an introduction to physical modeling using a computat..., download free Python tutorial in PDF (245 pages) created by ....

Algorithms book for Professionals

Download free Algorithm tutorial course in PDF, training file in 56 chapters and 257 pages. Free unaffiliated ebook created from Stack OverFlow contributor....