November 2017
Intermediate to advanced
670 pages
17h 35m
English
Parametric polymorphism means generics. A generic function or a data type can be written to handle any data value using the same logic, without having to cast the value to a specific data type. This greatly improves code reuse.
The following is a C# code example of a generic IsEqual implementation. The generic IsEqual function will accept any type (that implements Equals). We pass IsEqual integers and strings by simply indicating the type T during runtime, at the moment IsEqual is executed:
namespace Generics{ private static void Main() { if(Compute<int>.IsEqual(2, 2)) { Console.WriteLine("2 isEqualTo 2"); } if(!Compute<String>.IsEqual("A", "B")) { Console.WriteLine("A is_NOT_EqualTo B"); } } public class Compute<T> { public static ...