Template functions are implicit inline(note: not their explicit specialization (s)). This way you will not have a linker error related to multiple definitions of the same function. In fact, it is inlinenow mostly perceived as a linker directive, preventing ODR violations .
Justification
, ODR .
, , : , , .
, , , .
, , !
static
static: , , : , .
( ), static : , .