C# Generics vs C++ Templates

CsharpServer Side ProgrammingProgramming

C# Generics and C++ Templates provide support for parameterized types. The following are the differences −


C++ Templates are more flexible than C# Generics

Explicit specialization

Explicit specialization is not supported by C#

Type Parameter

The type parameter cannot be used as the base class for the generic type in C#

C# does not allow type parameters to have default types.


The C++ template has a compile-time modal, whereas C# Generics is both compile and run-time. Generics have run-time support.

Non-type template parameters

C#Templates will not allow non-type template parameters.

Partial Specialization

C# does not even support partial specialization.

Updated on 19-Jun-2020 08:56:11