I have recently completed a custom vector container implementation. I tried to mimic the original vector implementation as much as I can. Here is the source code.
After publishing it on a community platform, someone commented about one of the overloads of the fill constructors. The signatures of these overloads are as follows
explicit Vector(const size_type numOfElements, const allocator_type& alloc = allocator_type());
Vector(const size_type numOfElements, const value_type& fillValue, const allocator_type& alloc = allocator_type());
The guy says that the second one could be a gate to initialization hell. And then, I searched for the term but couldn't find a proper result.
What does initialization hell mean, and how does it occur?