目录
c++中的各种变量类型:
各种变量类型的长度:
各种变量类型的长度针对使用的不同平台也是不一样的(主要可分为32位和64位),使用运算符sizeof,便可以确定变量的长度(单位为字节)或类型。如:
#include<iostream>
using namespace std;
int main()
{
cout << "size of int:" << sizeof(int) << endl;
return 0;
}
这样就可以直接返回变量类型的长度了。
使用auto——依靠编译器的类型推断功能
可以通过这个方法,让编译器自动的根据变量的值来去决定变量的类型。
#include<iostream>
using namespace std;
int main()
{
auto flag = true;
auto Number = 1;
return 0;
}
通过端点查看flag、Number的类型,可发现已经自动赋为了bool型和int型了:
枚举常量
在有些情况下,变量只能有一组特定的取值。比如,指南针方位里面不能有“左”,在这些情况下,就需要定义一组可能取值有输入者决定的变量了,使用关键字eunm。
#include<iostream>
using namespace std;
enum CardinalDirections
{
North = 1,
South,
East,
West
};
int main()
{
cout << "CardinalDirections" << endl;
cout << "North:" << North << endl;
cout << "South:" << South << endl;
cout << "East:" << East << endl;
cout << "West:" << West << endl;
CardinalDirections newdir = East;
cout << "new:" << newdir << endl;
return 0;
}
需要注意的有两点:
(1)枚举将第一个常量设置为某值后,比如1,自动将随后的常量设置为2,3,4,5,每个枚举值都比前一个大1,可以指定起始值,如果没有指定,默认为起始值为0。
(2)这个枚举常量只能取CardinalDirections指定的值,不能取其他值。
使#define定义常量
这种方式现在已经弃用了,主要是为了帮助理解一些旧程序,当然也非常简单,使用如下的语法:
#define Pi 3.14286
让预处理器将随后出现的所有Pi都替换为3.14286。预处理器将进行文本替换,而不是智能替换。编译器既不知道也不关心常量的类型。