I'm currently trying to create my own data structure library of sorts for my C++ projects. Because of this I will want all my structures to be type agonistic. I know typically this is done using C++ templates (Array<int>, Vector<float>) but I know templates often get slack for there slow compilation times. Although, from what I've gathered from other posts on this site, it seems most of the compilation issues with templates arise from trying to do too much with them (using them for metaprogramming) or just overusing them in general (such as in the std library where many nested template classes occur). My question is would templates used in this manor (meaning only being used for simple type generics and not any meta-programming craziness) still cause enough compilation problems for me to consider finding an alternative solution? To be clear, I want compile times similar to Casey's (between 1sec - 10sec) for my programs for which I will generally be building as single compilation units.
I've found a site which claims templates can still be faster than using macros in this regard. I still have yet to check this out myself. Not sure if anyone else has things they do for generics that are different from either solution.