`sizeof(unsigned int) <= sizeof(long unsigned int)` with latter being at least 32 bits long, so unsigned int can be 32 bits long at most (and 16 bits minimum). I'd use `std::size_t` for counting nodes/elements/any long arrays...