I implemented Smart Pointers from scratch in C++ (UniquePtr, SharedPtr & WeakPtr)
I’ve been trying to spend more time building things from scratch instead of just reading about them.
My latest project was implementing UniquePtr, SharedPtr, and WeakPtr in C++ with reference counting.
It ended up being much more interesting than I expected. Small mistakes in reference counting quickly turned into bugs like memory leaks, double-free, and use-after-free, which made me appreciate the standard library implementation even more.
Current status:
UniquePtr
SharedPtr
WeakPtr
Reference counting
18/18 test cases passing
Repository:
https://github.com/574-jayeshSh/smart-pointer-library
I’d love to hear feedback from people who’ve implemented something similar or suggestions on what I should improve next.
https://redd.it/1v3m5k5
@r_cpp
Post #25648
18