Bunlar, derleyicinin kısmen tanımladığımız bir yapı (struct
) yahut numaralandırmayı (enum
), kodun kullanım şekline göre değerlendirip, mükemmel şekilde tanımlanmış derleme zamanı sürümünü oluşturmasına olanak sağlayan genelleştirilmiş türlerdir.
Türlerin genellenerek tektipleştirildiği programlarda nihai tür, kod bağlamımının derleyici tarafından değerlendirimesiyle elde edilmektedir. Bununla birlikte bazı durumlarda, tür çıkarsama işlemi karmaşaya neden olabileceğinden, türün açıkça bildirilmesi gerekebilir. Bu gibi durumlarda bir yengecin en iyi arkadaşı olan ve benim de çok sevdiğim, turbofish
adıyla bilinen ::<T>
işlecini kullanabilirsiniz.