I walked away from C++ twenty years ago just as the template craze started. It felt _wrong_ to me. The more of it I see, the _wronger_ it looks. I think the damage done to the language since then justifies my feelings.
By the same token I hate most of the generic stuff they put into Java and C#. I think simple generics are fine; but for some reason they can't stop themselves from trying to make the generics turing complete in their own right.
I also don't much care for the attributes/properties (@/[]) in Java and C#. I can see _some_ small utility for it (as in Junit) but for the most part I think it does (or at least tempts) more damage than good.