template size_t size(T* set) { size_t value = 0; for (size_t i = 0; i < sizeof(set); i += sizeof(set[value])) value++; return value; }