我一直在我的代码中定期使用cstdint中的类型(例如uint32_t),但现在它们不太适合我的需求,特别是关于模板。超越cstdint的数字类型
有没有一种方法来指定一个整型,它是模板参数大小的两倍?当我的模板传递一个uint32_t时,我需要为函数中的一个变量创建一个uint64_t。也许更困难的是,当传递一个uint64_t时,我需要它创建一个'uint128_t'。我可以用两个模板参数的数组来做到这一点,但是我无法将该数组传递给其他模板函数。这是代码的性能关键部分(我正在做密码学)。
与此相关,是否还有一些其他头文件可以包含(按优先顺序:标准,boost,其他)给我128位整数?看起来像这个问题回答这个特定的部分:Fastest 128 bit integer library
有没有一种方法来指定我想使用不大于特定大小的最大整数可用?这个最大尺寸也是sizeof(T)的函数。
此之前已经讨论,搜索这个网站,你会发现一些有用的东西。 –
你需要什么128位整数? –
相关:http://stackoverflow.com/questions/1188939/representing-128-bit-numbers-in-c –