keywords: C++, Advanced Features Notes

Dependency Injection

Dependency Injection in C++
https://vladris.com/blog/2016/07/06/dependency-injection-in-c.html

Anonymous Namespaces

Unnamed/anonymous namespaces vs. static functions
https://stackoverflow.com/questions/154469/unnamed-anonymous-namespaces-vs-static-functions

Dynamic Initialization & Static Initialization

C++ - Initialization of Static Variables
https://pabloariasal.github.io/2020/01/02/static-variable-initialization/

Move Semantics

What is move semantics?
https://stackoverflow.com/questions/3106110/what-is-move-semantics
Difference between copy constructor and move constructor
https://stackoverflow.com/a/3106136/1645289

Polymorphic Allocator

std::pmr::polymorphic_allocator
https://en.cppreference.com/w/cpp/memory/polymorphic_allocator

polymorphic_allocator: when and why should I use it?
https://stackoverflow.com/questions/38010544/polymorphic-allocator-when-and-why-should-i-use-it

Polymorphic Allocators, std::vector Growth and Hacking
https://www.bfilipek.com/2020/06/pmr-hacking.html

STL

new(std::nothrow)

std::nothrow
https://en.cppreference.com/w/cpp/memory/new/nothrow

Reference

Blogs

Modernes C++
https://www.modernescpp.com/index.php/

Categories for the Working C++ Programmer
https://bartoszmilewski.com/2020/08/05/categories-for-the-working-c-programmer/amp/

<bit> in Visual Studio 2019 version 16.8 Preview 2
https://devblogs.microsoft.com/cppblog/bit-in-visual-studio-2019-version-16-8-preview-2/


Rank does not confer privilege or give power. It imposes responsibility. ― Peter Drucker