image
Templates, the STL, and Other Skills in C++

Contents

Templates, the STL, and Other Skills
1
Course Overview
PREVIEW1m 43s
2
Templates
PREVIEW22m 58s

The course is part of this learning path

Course Overview
Difficulty
Intermediate
Duration
2h 29m
Students
57
Ratings
5/5
starstarstarstarstar
Description

In this course, we will build on your existing foundational and object-oriented oriented skills and enhance them by looking at templates, the Standard Template Library, and other skills to help you in your builds.

Learning Objectives

  • Learn about function templates and class templates
  • Learn how to write efficient and excellent code with the data structures and algorithms in the standard template library 
  • Learn about smart pointers to manage dynamic memory automatically 
  • Understand friend functions, friend classes, and operator overloading

Intended Audience

  • Beginner coders, new to C++
  • Developers looking to upskill by adding C++ to their CV
  • College students and anyone studying C++

Prerequisites

To get the most out of this course, you should have a basic understanding of the fundamentals of C++.

Transcript

In this section, we will build on the foundational and object-oriented oriented skills that we've learned throughout the course. We will learn about function templates and class templates, which will help us encourage software reuse. Additionally, we will learn about the standard template library or STL, which contains tons of data structures and algorithms that help us write efficient and excellent code with less effort than if we had to do everything from scratch. We discuss Smart Pointers which manage dynamic memory for us automatically so we don't have to. Further, we will discuss friend functions and friend classes, a controversial feature of C++ that a lot of developers don't like but that is crucial to understand in order to recognize it in code, or in some occasions write it yourself. We will round out this section with coverage of operator overloading, a feature that many languages don't support, but that is an integral part of C++ development with many possibilities. We finalize our section with two very cool projects. We will construct an interactive dictionary that is based on an STL data structure, the map. And we will also write an alien class and flex our abilities with operators and operator overloading to see what results we get from breeding different aliens and comparing them in terms of their prestige. So, we've got a lot of wild and crazy awesome topics to get through in this section. We start our journey with templates in the next lecture. Let's get going.

About the Author
Students
1369
Courses
20
Learning Paths
4

John has a Ph.D. in Computer Science and is a professional software engineer and consultant, as well as a computer science university professor and department chair.

Covered Topics