O que é instanciação de template?
A instanciação de template é o processo pelo qual um compilador produz uma função ou classe concreta a partir de um template genérico, substituindo os parâmetros por tipos reais. Cada combinação única de argumentos gera uma instanciação separada com seu próprio código gerado. O trabalho acontece em tempo de compilação, e é por isso que o uso intenso de templates pode alongar os builds.
Por que isso importa
A instanciação oferece código genérico com segurança de tipos e sem custo de despacho em tempo de execução, mas cada uso distinto gera mais código que o compilador e o linker precisam tratar. Ela é um grande fator tanto do tempo de compilação quanto do tamanho do binário em código com muitos templates.
Guias relacionados
What Is Monomorphization?Monomorphization compiles generic code into a separate specialized copy for each concrete type it is used wit…
What Is Type Erasure?Type erasure discards specific type parameters at or after compilation, leaving generic code working through…
What Is a Forward Declaration?A forward declaration tells the compiler a name exists and its type before its full definition, letting code…