template class grille { public: grille(); T &operator[](const unsigned int); template friend std::ostream &operator<<(std::ostream &, const grille &g); private: T tab[a][b]; };