¿Tiene sentido usar palabras clave en línea con plantillas?
Dado que las plantillas se definen dentro de los encabezados y el compilador puede determinar si la incorporación de una función es ventajosa, ¿tiene algún sentido? He oído que los compiladores modernos saben mejor cuándo alinear una función y están ignorandoinline
insinuación.
Edición: Me gustaría aceptar ambas respuestas, pero esto no es posible. Para cerrar el tema estoy aceptando.franelaLa respuesta, porque recibió la mayoría de los votos y él tiene una razón formal, pero como mencioné en los comentarios, consideroPerritoyComponente 10Las respuestas también son correctas, desde diferentes puntos de vista.
El problema está en la semántica de C ++, que no es estricta en el caso deinline
palabra clave y en línea.franela dice "escribe en línea si lo dices en serio", pero lo que realmente significainline
no está claro, ya que evolucionó de su significado original a una directiva que "detiene a los compiladores que se quejan de las violaciones de la ODR", comoPerrito dice.