template class SpecificBoard extends Board { Point** array; new() { array = new Point[H][V]; /* then set i,j on each... */ } ... } template class Point { int i,j; new(x,y) { i = x; j = y } ... } Board* board = new SpecificBoard<10,10>;