Tutorialspoint

SEPTEMBER SKILUP SALE IS LIVE | Use: SKILL10

Mastering C++ Template from Basics to Meta Programming

person icon Subrat Kumar Swain

4.5

Mastering C++ Template from Basics to Meta Programming

Unleash the power of C++ templates and master meta programming techniques.

updated on icon Updated on Sep, 2025

language icon Language - English

person icon Subrat Kumar Swain

category icon Development ,Programming Languages,C++

Lectures -15

Duration -1 hours

Lifetime Access

4.5

price-loader

Lifetime Access

30-days Money-Back Guarantee

Training 5 or more people ?

Get your team access to 10000+ top Tutorials Point courses anytime, anywhere.

Course Description

Description:
This course is a complete and comprehensive course on C++ templates, from the basics to advanced meta programming techniques in C++. You will learn how to properly use templates as well as how to leverage templates to write generic algorithms, data structures, and utilities when programming in C++.
Highlights:
  • Full coverage of C++ templates
  • Hands-on practice implementing templates
  • Advanced meta programming concepts covered
  • Fold Expressions
  • Variadic Template
  • Explicit instantiation
  • Code boalt management
  • Template Specialization
What you will learn:
  • Fundamentals of C++ Templates
  • You will learn the basics of C++ templates including function templates, class templates, and template specialization.
  • Advanced Template Techniques
  • You will become very familiar with template metaprogramming, such as template parameters, variadic templates, etc.
  • Reusable Generic Code using Templates
  • You will understand how to write generic code (using templates), so that code can be more reusable and perform better.

Goals

  • By the end of this course, students will have command of templated programming in C++, including the full range of possibilities from basic template syntax through to advanced metaprogramming techniques. They will develop the capabilities to write reusable, efficient, and type-safe code using templates, variadic templates, fold expressions, and specialization methods. They will also rely on demos and reproducible examples to develop the diagnostic skills to identify code bloat in template usage, use templates with confidence, and leverage modern C++ idioms and practices in an appropriate way in their real-world coding activities.

Prerequisites

  • Basic knowledge in C++ OOPS.
Mastering C++ Template from Basics to Meta Programming

Curriculum

Check out the detailed breakdown of what’s inside the course

Unfolding Templates: Where It All Begins

14 Lectures
  • play icon Intro 01:43 01:43
  • play icon Reusability 01:42 01:42
  • play icon Demo-Problem Statement 07:02 07:02
  • play icon Template in detail 03:51 03:51
  • play icon Solve the multiple overloads issue using Template 05:58 05:58
  • play icon More Examples - In Detail 08:02 08:02
  • play icon ManageMultipleTypes 02:17 02:17
  • play icon Demo Plan 00:57 00:57
  • play icon Demo-1 03:22 03:22
  • play icon Demo-II - Specialization 09:06 09:06
  • play icon Demo-II-Contd(Soln To The Assignment) 02:40 02:40
  • play icon CompilerExplorerDeepDive 07:16 07:16
  • play icon QUIZ 04:51 04:51
  • play icon UC-3-Explanation 02:39 02:39

Instructor Details

Subrat Kumar Swain

Subrat Kumar Swain

Teaching advanced C++—where every error becomes a learning moment.
👨‍🏫 About Me
Hello! I’m Subrat, a seasoned software developer and educator with over 20 years of experience across product-based and service-based multinational companies. My career has spanned diverse domains, including embedded systems, automation, oil & gas, and the automotive industry—always driven by a passion for clarity, reproducibility, and learner empowerment.

💻 Areas of Expertise
  • Advanced C++: From fundamentals to modern standards (C++11/14/17/20), covering:
    • Templates, SFINAE, specialisation, and fold expressions
    • Code bloat diagnostics and compile-time optimisation
    • Multithreading and concurrency: std::thread, std::async, mutexes, condition variables, and atomic operations
    • STL mastery: containers, algorithms, iterators, and custom adaptations
    • RAII, smart pointers, move semantics, and lambda expressions
    • Diagnostic debugging and reproducible hands-on demos
  • Build Systems: Makefiles(Linux & macOS) and CMake for cross-platform builds.
  • Programming Languages: C, C++, Java, Python, C#, Qt
  • Software Design: Object-oriented programming, modular architecture, and error-proof automation
🎯 Teaching Philosophy
I believe every error is a teaching opportunity. My approach is diagnostic and hands-on—turning complex concepts into reproducible demos and clear explanations that empower learners to challenge, verify, and master the material. Whether it's debugging template bloat or automating builds, I ensure every concept is traceable and purposeful.

🤝 Let’s Learn Together
My goal is to simplify programming and build systems for developers at every level. If you're ready to deepen your understanding, sharpen your skills, and learn with clarity and confidence—welcome aboard.

Let’s code, build, and innovate—together.

Course Certificate

Use your certificate to make a career change or to advance in your current career.

sample Tutorialspoint certificate

Our students work
with the Best

Related Video Courses

View More

Annual Membership

Become a valued member of Tutorials Point and enjoy unlimited access to our vast library of top-rated Video Courses

Subscribe now
Annual Membership

Online Certifications

Master prominent technologies at full length and become a valued certified professional.

Explore Now
Online Certifications

Talk to us

1800-202-0515