the template guide geeksforgeeks example c++ templates

guide - template function c++



Búsqueda de dos fases: explicación necesaria (1)

¿Qué significa que el compilador utiliza la búsqueda de dos fases para compilar la clase de plantilla?


Las plantillas se compilan (al menos) dos veces:

  1. Sin instanciación, se verifica la sintaxis del código de la plantilla en sí mismo.
    Por ejemplo: cualquier error de sintaxis como, por ejemplo ; etc.

  2. En el momento de la creación de instancias (cuando se conoce el tipo exacto), el código de la plantilla se verifica nuevamente para asegurar que todas las llamadas sean válidas para ese tipo en particular.
    Por ejemplo: la plantilla puede incluir llamadas a funciones que podrían no estar presentes para ese tipo en particular.

Esto se llama búsqueda de dos fases.