### SALES PAGE PROTOTYPE ###

### PROTOTYPE ### PROTOTYPE ### PROTOTYPE ### PROTOTYPE ### PROTOTYPE ### PROTOTYPE ### PROTOTYPE ### PROTOTYPE ### PROTOTYPE ### PROTOTYPE

Image14

Course Description

Dive deep into C++ functions, from fundamentals to advanced concepts like function pointers, callables & invocables. Master C++ lambda expressions across all standards (C++11 to C++23), and explore powerful C++ functional utilities like std::function, std::invoke, std::bind & more. Elevate your C++ coding for efficiency and flexibility.

Features

6-hrs On Demand Video

Exclusive 1-on-1 With Instructor

Course Completion Certificate

Priority Q/A

Full Lifetime Access

Community Access

Curriculum

Understand in detail on what is planned under each module

📞 Exclusive 30-Minute Session

📊 Course Material

📄 Source Code

Introduction to functions

Functions Usage

Function Internals

One Definition Rule

Function Arguments

Function Parameter Types

Function Return Values

Parameter Types

Default Arguments

Function Overloading

Name Mangling

Function Overloading Resolution

inline Functions - I

inline Functions - II

constexpr Functions - I

constexpr Functions - II

consteval Functions

Static Functions

Function Templates - I

Function Templates - II

Forwarding References

Variadic Templates

More Features

Member Functions - I

Member Functions - II

Quiz

Progress Update

Module Source Code

Function Pointers - I

Function Pointers - II

Function Pointers - III

Callbacks

Pointer To Member Function

Quiz

Progress Update

Function Pointers Revisited

Function Objects

Function Pointers Vs Function Objects - I

Function Pointers Vs Function Objects - II

Improving Function Objects

Quiz

Lambda Expressions

Lambda Examples

Lambda Capture List

Capture By Value

Capture By Reference - I

Capture By Reference - II

More Capture Types

Local & Global Lambdas

Lambda Conversion

Generic Lambda

Generalized Lambda Capture

constexpr Lambda

Implicit this Capture

Immediate Lambda

Template Type Parameters - I

Template Type Parameters - II

Init-Capture Of Pack Expansion

Unevaluated Context

Constrained Lambda

Making Operator () Optional

Attributes on Lambda Expressions

static Operator ()

static Lambda

Quiz

Callable Concept

Introduction To std::function

Function Target

Functor Target

std::function Issues

Member Function Target

Member Function Target - More Examples

Pros & Cons

std::mem_fn

Partial Function

std::bind

std::bind Usage

Usage with Global Functions

Usage With Member Functions

Usage With Functors

Usage with User-Defined Arguments

New C++20 & C++23 Binders

Lambda As Binder - I

Lambda As Binder - II

Invocable Concept (std::invoke)

Revisiting Callables

Introductory Example

Execute Algorithm Example

Projection - I

Projection - II

Projection - III

std::invoke_r

std::apply

std:;apply Examples

std::not_fn

C++23 std::move_only_function

Quiz

Project Introduction

Menu Class

Callbacks In Menu

Numbers Class

Menu With PMFs

PMFs With Base Class

Virtual Functions - I

Virtual Functions - II

Virtual Functions - III

Virtual Functions - IV

Menu With Virtual Functions

PMFs Vs Virtual Functions

Menu Limitations

Improved Menu

Why Do This Course

Unlock advanced functionality with function pointers and callbacks.

Become an expert in C++ lambda expressions across all standards.

Write modern C++ with powerful standard library utilities.

Gain practical, hands-on experience through projects.

Stay current with the latest C++20 & C++23 lambda features.

Requirements

  • Basic knowledge of C++
  • Modern C++ compiler (Visual Studio 2022, gcc 13, clang 17)

Related Products

Additional products that may be relevant to your interests

Related Courses

Additional courses that may be relevant to your interests

Image

Complete Modern C++


Unlock the Full Potential of C++ with the Latest Modern Standards


Image

C++20


Unlock the Next Level of C++ Programming with the C++20 Standard


Image

Modern C++ Templates


Next-Level C++: Templates for High-Performance and Maintainable Code


Image23

Instructor


- Hello! I'm Umar Lone

I've educated and mentored students and professionals globally, leveraging over 20 years of experience in C++, Object-Oriented Programming, Design Patterns, and related technologies. My professional background includes significant contributions to C++, Java, and C# projects with esteemed companies, alongside providing specialized project consultation & mentoring.


My current focus is on delivering comprehensive video courses that distill this extensive knowledge. I specialize in transforming intricate concepts into clear, practical, and actionable insights, supported by real-world examples. This approach is designed to equip you with the necessary clarity and confidence for sustained growth and impactful contributions within your projects and career trajectory.


Begin your learning journey with me now and unlock the advanced understanding and practical expertise essential for making a significant impact in your field.


Keep in touch

Subscribe for announcements, new courses & discount coupons

Yes please, save my details so you can send me educational content that is relevant and helpful.