template < unsigned int i >
struct t {
static const char *s;
};
template < unsigned int i >
const char* t<i>::s = ...;
где ...
равно "0 1 2 ... i-1", например "0 1 2 3 4" для i == 5
.
Возможно ли это? (Никаких решений, делающих это во время выполнения, пожалуйста!)
const
не вызывает этого, но может принимать любую оцениваемую во время выполнения функцию для генерации строки.