Dado que las plantillas se definen dentro de los encabezados y el compilador puede determinar si incluir una función en línea es ventajoso, ¿tiene algún sentido? Escuché que los compiladores modernos saben mejor cuándo insertar una función y están ignorando la inline
pista.
editar: Me gustaría aceptar ambas respuestas, pero esto no es posible. Para cerrar el tema, acepto la respuesta de phresnel , porque recibió la mayoría de los votos y formalmente tiene razón, pero como mencioné en los comentarios, considero que las respuestas de Puppy y del Componente 10 también son correctas, desde un punto de vista diferente .
El problema está en la semántica de C ++, que no es estricta en el caso de inline
palabras clave e inlining. phresnel dice "escribe en línea si lo dices en serio", pero lo que en realidad significa inline
no está claro ya que evolucionó de su significado original a una directiva que "detiene a los compiladores quejándose de violaciones de ODR" como dice Puppy .