这有什么意义吗?
static_cast<long long>(1) == 1LL
static_cast<float>(1) =? 1F
有没有一种简单的方法可以为其他类型(例如 float)进行转换? 非常感谢!
最佳答案
从 C++11 开始,您可以定义自己的文字。例如,您可以像这样定义文字 _F
:
float operator"" _F(unsigned long long l)
{
return static_cast<float>(l);
}
int main()
{
auto a = 1_F;
static_assert(std::is_same<decltype(a), float>::value, "Not a float");
return 0;
}
关于c++ - 如何使用任何其他类型制作类似 1LL 的类型转换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16424104/