My audio engine is open-source if you want to look through the code: https://sourceforge.net/p/tinyoal/
I rewrote std::vector so I could separate arrays of objects that have constructors/destructors and objects that don't. These are almost always used by other data structures, not by themselves. I still use std::vector when I just need a dynamic array that respects constructors and proper copy semantics. The problem I encountered was that std::vector refuses to integrate nicely with other data structures.
While I'm sure many would still cry foul just because they can and don't understand what I'm doing, I can assure you that my re-implementation of std::vector is purposeful and used in specific circumstances, not as a generalized replacement, which is the real issue.