NHNurul Hasaningoodnotes.hashnode.dev·Apr 26 · 4 min readI Built a Mini 3D Rendering Engine Using Just Canvas & MathI didn’t. Instead, I decided to reinvent the wheel — and honestly, it was one of the most fun and eye-opening things I’ve done. In this article, I’ll walk you through how I built a fully interactive 300
NHNurul Hasaningoodnotes.hashnode.dev·Sep 29, 2025 · 13 min readVirtual Destructor & Constructor Philosophy in C++1️⃣ The Situation You have a base class with virtual functions. You allocate a derived object using a base pointer: class Base { public: virtual void func() { } ~Base() { cout << "Base dtor\n"; } // ❌ Non-virtual }; class Derived : publi...00
NHNurul Hasaningoodnotes.hashnode.dev·Sep 29, 2025 · 17 min readVirtual Table (vtable), Virtual Pointer (vptr), and Object Slicing in C++C++ is a language that supports both compile-time (static) and runtime (dynamic) polymorphism. Understanding how virtual functions work under the hood is crucial for interviews. This article covers everything about vtable, vptr, and object slicing, i...00
NHNurul Hasaningoodnotes.hashnode.dev·Aug 14, 2025 · 3 min read📖 Complete Guide to ordered_set in C++1. Introduction C++ STL already provides: std::set → stores unique elements in sorted order, allows logarithmic-time insertion, deletion, and search. std::multiset → allows duplicates, sorted order. std::unordered_set → stores unique elements in n...00
NHNurul Hasaningoodnotes.hashnode.dev·Aug 5, 2025 · 6 min readlist, Dequeue in C++ – Practical Notes✅ 1. Basic Initialization cppCopyEditlist<int> l = {10, 20, 30}; ✅ 2. Accessing Elements (No [] indexing) cppCopyEditauto it = l.begin(); advance(it, 2); // move to 3rd element cout << *it; // Output: 30 ✅ 3. Modifying Value at Positio...00