A practical walkthrough applying template bloat reduction principles in C++ by factoring out the type-dependent portions of a templated function, continuing a series on minimizing code size caused by template instantiation.

1m read timeFrom devblogs.microsoft.com
Post cover image

Questions this post answers

How can I reduce binary size caused by C++ template instantiation bloat?

Factor out the type-independent portions of a templated function into a separate non-template function or base class, so the compiler only instantiates the type-dependent parts per type. This avoids duplicating identical machine code across every template instantiation, since the shared logic gets compiled once and reused, reducing overall binary size. Developers optimizing C++ binary size track practical template techniques like this on daily.dev.

125 Impressions