El que es un caso especial es el primero, no el segundo.
En el primero el compilador deduce el tipo y no necesitas especificarlo como parámetro de plantilla, en el segundo no.
Cuando ande más despejado intentaré pensar en un explicación más currada, pero muchas veces no sé de antemano si el compilador deduce o no y es cuestión de probarlo :ojo:.
La duda que tengo yo es si todos los compiladores hacen las mismas deducciones(cosa que no creo), por lo que puede ser mejor especificarlo siempre(salvo en casos muy claros, tras hacer pruebas en distintos compiladores)
En el primero el compilador deduce el tipo y no necesitas especificarlo como parámetro de plantilla, en el segundo no.
Cuando ande más despejado intentaré pensar en un explicación más currada, pero muchas veces no sé de antemano si el compilador deduce o no y es cuestión de probarlo :ojo:.
La duda que tengo yo es si todos los compiladores hacen las mismas deducciones(cosa que no creo), por lo que puede ser mejor especificarlo siempre(salvo en casos muy claros, tras hacer pruebas en distintos compiladores)