C++ 将类型指定给基元文字的简写方法
在没有强制转换的情况下,将类型分配给文字原语的方法有哪些? 我知道0.0变成双精度,0.0f变成浮点。是否有其他方法可以对文本进行类型转换?有许多方法可以添加到整数文本中,以获得所需的类型:C++ 将类型指定给基元文字的简写方法,c++,types,overloading,literals,C++,Types,Overloading,Literals,在没有强制转换的情况下,将类型分配给文字原语的方法有哪些? 我知道0.0变成双精度,0.0f变成浮点。是否有其他方法可以对文本进行类型转换?有许多方法可以添加到整数文本中,以获得所需的类型: 1 // int 2u // unsigned int 3ll // long long int 4ull // unsigned long long int 类似地,例如,没有后缀表示double,f表示float,l表示long double 小于int的类型没有预先打包的文字后缀。但您可
1 // int
2u // unsigned int
3ll // long long int
4ull // unsigned long long int
类似地,例如,没有后缀表示double,f表示float,l表示long double
小于int的类型没有预先打包的文字后缀。但您可以自己编写,例如:
inline uint16_t operator ""_u16(uint64_t value) {
return static_cast<uint16_t>(value);
}
5_u16 // uint16_t
除此之外,VC显然为所有类型提供了文字后缀,比如10i16为您提供了int16\t 您可以向整型文字中添加一些类型,以获得所需的类型:
1 // int
2u // unsigned int
3ll // long long int
4ull // unsigned long long int
类似地,例如,没有后缀表示double,f表示float,l表示long double
小于int的类型没有预先打包的文字后缀。但您可以自己编写,例如:
inline uint16_t operator ""_u16(uint64_t value) {
return static_cast<uint16_t>(value);
}
5_u16 // uint16_t
除此之外,VC显然为所有类型提供了文字后缀,比如10i16为您提供了int16\t 你真正想解决的问题是什么?我不明白你的问题是什么。我不想每次都做“静态播放