在C++中是否有任何方法可以定义一个足以容纳最多特定数字的类型,大概是使用一些聪明的模板代码.例如,我希望能够写: -
Integer<10000>::type dataItem;
Run Code Online (Sandbox Code Playgroud)
并将该类型解析为足以保持指定值的最小类型?
背景:我需要使用外部数据文件中的脚本生成一些变量定义.我想我可以使脚本看看值,然后使用uint8_t,uint16_t,uint32_t等,这取决于价值,但它似乎更优雅建设规模到生成的C++代码.
我看不出任何方法可以制作一个可以做到这一点的模板,但是知道C++模板,我确信有办法.有任何想法吗?