Playful code. С++ without memory allocations

The course is dedicated to C++ programming without using the heap. It explores which features of the language and the standard library can be safely applied in resource-constrained environments — such as embedded systems or game projects, where dynamic memory may be limited or outright forbidden. You’ll learn how to…
Средний уровень
4-5 часов в неделю
Сертификат Stepik

О курсе

Many features of C++ and its standard library make transparent use of dynamic memory — that is, the heap. On desktop systems, this is rarely an issue: the heap is always available and can be used freely. But in embedded development or game programming, things get trickier — dynamic memory may be heavily restricted, or even outright forbidden.

This raises a key question: which parts of C++ are safe to use, and which are not? The answer isn’t always obvious. For instance, some STL containers always rely on new, meaning they allocate from the heap. Even familiar constructs like std::string or virtual functions can secretly trigger dynamic allocations. As a result, developers often find themselves wondering: how much of the language must I “cut away” to write heap-free code?

This course is exactly about that — how to write modern, efficient C++ without using dynamic memory, while keeping all the benefits of the language intact.

Для кого этот курс

This course is designed for developers who need to write fast and reliable code without using dynamic memory. It will be especially useful for those working with embedded systems, game development, or console and mobile platforms, where any hidden memory allocations can slow down performance or cause unexpected errors. The course is also suitable for experienced C++ developers who want to learn how to use modern language features and write efficient, safe code — preserving the convenience of working with objects and polymorphism, but without unnecessary heap allocations.

Начальные требования

Prerequisites for the course:

  • Basic knowledge of C++: understanding of syntax, functions, classes, structures, and pointers.

  • Experience with Object-Oriented Programming (OOP): inheritance, polymorphism, and virtual functions.

  • Familiarity with the Standard Template Library (STL): containers, strings, and algorithms.

  • Ability to work with compilers and build systems: knowledge of basic compiler flags, and the ability to run and debug programs.

  • A basic understanding of memory layout: stack, heap, and data segment.

These skills will help you quickly get into the material and focus on optimising code without using dynamic memory.

Наши преподаватели

Как проходит обучение

How the course is structured:

The course combines theory with hands-on practice. Each topic begins with an explanation of how C++ features work without relying on dynamic memory, followed by practical examples. First, you’ll see a classic solution that uses the heap, and then you’ll learn how to rewrite it using only static or stack-based memory.

Throughout the course, you will:

  • Practise replacing standard solutions with more efficient alternatives;

  • Rewrite code to work without new and delete;

  • Use compile-time mechanisms to replace RTTI and dynamic_cast;

  • Apply modern C++20 features to write efficient and safe code.

Программа курса

загружаем...
Certificate

Сертификат

Сертификат Stepik

Что вы получаете

  • An understanding of which C++ features rely on dynamic memory — and how to work around them.
  • Practical skills in writing code without using the heap, relying solely on the stack and static buffers.
  • The ability to preserve polymorphism, interfaces, and OOP principles without virtual functions or RTTI.
  • Experience in replacing standard STL containers with fixed-size data structures.
  • Skills in manually optimising and analysing code to detect hidden dynamic memory usage.
  • Preparation for developing game systems or embedded software where heap allocation is limited or entirely prohibited.

Сколько стоит обучение

Price: 5 000 
Вы попробовали и поняли, что вам сейчас не подходит этот курс? Ничего страшного, мы вернём вам деньги в течение 30-ти дней после покупки.

Часто задаваемые вопросы

Расскажите о курсе друзьям

Price: 5 000