Poiché i modelli sono definiti all'interno delle intestazioni e il compilatore è in grado di determinare se l'inlining di una funzione è vantaggioso, ha senso? Ho sentito che i compilatori moderni sanno meglio quando incorporare una funzione e ignorano i inline
suggerimenti.
modifica: vorrei accettare entrambe le risposte, ma non è possibile. Per chiudere la questione accetto la risposta di phresnel , perché ha ricevuto la maggior parte dei voti e ha formalmente ragione, ma come ho detto nei commenti considero corrette anche le risposte di Puppy e Component 10 , da diversi punti di vista .
Il problema è nella semantica C ++, che non è rigorosa in caso di inline
parole chiave e inlining. phresnel dice "scrivi in linea se lo intendi", ma cosa si intende effettivamente con inline
non è chiaro poiché si è evoluto dal suo significato originale a una direttiva che "impedisce ai compilatori di lamentarsi delle violazioni ODR" come dice Puppy .