1. const
在const声明后,后面再次赋值,会报错。
unsigned int price {1'400'00'0u};
const int a=100;
//a=200; //报错
2.constexpr, constinit
constexpr C++14
constexpr int book1 {25}; //字面量literal可以来定义 常量表达式constexpr
constexpr int book3 {book1};//常量也可以来定义
string 不行,查阅CSDN相关文章
算术类型(整数,小数)、引用、指针、枚举和一些特殊的类都属于字面值类型,
而IO库、string类型则不属于字面值类型,也就不能被定义成constexpr。
//constexpr string book2 {"BOOK"};//报错
constinit必须写在main函数外面
//constinit char ch1='F';
3.类型转换
3.1隐式类型转换
//隐式数据类型转换
int num1=10;
double num2=23.5;
double num3=num1+num2;
cout<<num3<<endl; //33.5