Escolha automaticamente um tipo de variável grande o suficiente para armazenar um número especificado
Existe alguma maneira no C ++ definir um tipo que seja grande o suficiente para armazenar no máximo um número específico, presumivelmente usando algum código de modelo inteligente. Por exemplo, eu quero poder escrever: -
Integer<10000>::type dataItem;
E esse tipo é resolvido com o tipo menor que é grande o suficiente para armazenar o valor especificad
Background: Eu preciso gerar algumas definições de variáveis usando um script de um arquivo de dados externo. Eu acho que eu poderia fazer o script olhar para os valores e então usaruint8_t
, uint16_t
, uint32_t
, etc., dependendo do valor, mas parece maiselegant para criar o tamanho no código C ++ gerad
Não vejo nenhuma maneira de criar um modelo que possa fazer isso, mas conhecendo os modelos C ++, tenho certeza de que existe um caminho. Alguma ideia