Custom Resource Management with std::unique_ptr (Deleter)

Medium Smart Pointers
Solve in Playground →

Problem Statement

Write a C++ program demonstrating `std::unique_ptr` with a custom deleter function to manage legacy resources.

Input Format

A single integer N.

Output Format

Print value managed, followed by custom deleter cleanup log message.

Constraints

-100000 <= N <= 100000

Sample Input

333

Sample Output

Managed Value: 333
Custom Deleter Executed

Explanation

`std::unique_ptr` supports custom deleters for managing non-standard resources (file descriptors, sockets, C-style malloc).

Starter Code

#include <iostream>
#include <memory>

struct CustomDeleter {
    void operator()(int *ptr) const {
        delete ptr;
        std::cout << "Custom Deleter Executedn";
    }
};

int main() {
    int n;
    if (std::cin >> n) {
        // Write your custom deleter unique_ptr logic here
    }
    return 0;
}

Limits

  • Time Limit: 1s
  • Memory Limit: 256MB

Embedded C Programming

Updated: March 15, 2026
Intermediate

Embedded systems rely on efficient low-level programming to interact directly with hardware. In this course, you will learn how to write practical Embedded C programs used in real microcontroller-based systems. Rather than focusing only on theory, this course follows a practice-driven approach. Each lesson includes hands-on coding exercises that simulate real firmware development tasks used