100DaysOfGameDev: Day 36

Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates. Templates.

This example made a bit more clear, how to think about one aspect of templates:

template<typename T>
struct S {
    template<typename U>
    void f(U u);
}

<template T>
<template U>
void S::f() { /* ... */ }

Therefore U is not part of a class template but is a separate template. Cannot formulate my ideas about templates yet. Need more research. That's it for today, see you tomorrow!