我最近开始自学 C++,并且对 Java 有一些先验知识。我想知道是否可以选择在 C++ 中进行类型转换。
就像在java中一样 字符ch=(字符)(65);会将 'A' 存储在 ch 中 或 int n='a';将在 n 中存储 97
c++ 有相同或相似的选项吗?
最佳答案
对于第一次过渡到 C++,大多数时候使用 static_cast
就可以了。对于显式转换:
int i = static_cast<int>('c');
当然也有隐式转换:
int i = 'c';
char c = 32;
及特别促销规则
char a = 'a', b = 'b';
auto result = a + b; // result is int now
然后是其他强制转换运算符:
-
dynamic_cast
从基本类型转换为派生类型。 -
reinterpret_cast
使你的代码失败——有时——而你不知道为什么。 -
const_cast
从表达式中删除常量(但前提是它们不是常量)。
关于java - 我可以像在 Java 中那样在 C++ 中进行类型转换/升级吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60192377/