Étant donné que les modèles sont définis dans les en-têtes et que le compilateur est capable de déterminer si l'intégration d'une fonction est avantageuse, cela a-t-il un sens? J'ai entendu dire que les compilateurs modernes savent mieux quand intégrer une fonction et ignorent les inline
indices.
edit: Je voudrais accepter les deux réponses, mais ce n'est pas possible. Pour clore le problème, j'accepte la réponse de Phresnel , car elle a reçu la plupart des votes et il a formellement raison, mais comme je l'ai mentionné dans les commentaires, je considère les réponses de Puppy et Component 10 comme correctes aussi, d'un point de vue différent .
Le problème est dans la sémantique C ++, qui n'est pas stricte en cas de inline
mot clé et d'inlining. phresnel dit «écrivez en ligne si vous l'entendez», mais ce que l'on entend par là inline
n'est pas clair car il a évolué de sa signification originale à une directive qui «empêche les compilateurs de se plaindre des violations des ODR» comme le dit Puppy .