template - typename c++



Ricerca in due fasi: necessaria spiegazione (1)

I modelli sono compilati (almeno due volte):

  1. Senza Instantiation il codice template stesso viene controllato per la sintassi.
    Ad esempio: eventuali errori di sintassi come ; eccetera.

  2. Al momento dell'istanziazione (quando è noto il tipo esatto), il codice del modello viene ricontrollato per garantire che tutte le chiamate siano valide per quel particolare tipo.
    Ad esempio: il modello potrebbe richiamare chiamate a funzioni che potrebbero non essere presenti per quel particolare tipo.

Questo è chiamato come Two Phase Lookup.

Cosa significa che il compilatore sta usando la ricerca in due fasi per compilare la classe template?





templates