我有一个示例代码
template <typename BIT_LENGTH>
class mod {
public:
mod(BIT_LENGTH val) : m_val (powl(2,sizeof(BIT_LENGTH) * 8) - 1), _val(val) {
}
void value() {
std::cout << " sizeof -- " << sizeof(BIT_LENGTH) << std::endl;
std::cout << " value is : ---- " << m_val << std::endl;
std::cout << " value is : ---- " << _val << std::endl;
}
private:
BIT_LENGTH m_val;
BIT_LENGTH _val;
};
int main(){
mod<uint64_t> mod1(10);
mod1.value();
}
现在我想将我的成员变量初始化为模板化类型的最大值。
最好的方法是什么?
有什么比使用 powl 功能更清洁的吗?