The 'N' is not to be capitalized. And there is no difference. Not even a bit. typename was just included to make clear that primary datatypes may also be used, because the class keyword is associated with objects and stuff. But the semantic difference is zero.