从int转换为int32
我的c ++代码中有一堆int,我需要更改为int32。 和我的布尔相同。 为了使用int32和bool32,我需要包含哪个头。 一旦我制作它们,我该如何声明它们。 我能用int32替换int吗?
例如:
int x;
变
int32 x;
当我尝试从int更改为int32时,我遇到了很多错误。 这里有几个:
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C2086: 'const int x' : redefinition
在Windows上,您应该能够使用内置类型__int32。 我从来没有听说过32位bool,但是你可以使用typedef。
如果您的编译器支持它,将获得int32_t,C99固定宽度整数类型。
从来没有听说过没有bool32,我无法想象它甚至会产生什么样的感觉。
是的,只要你的类型保持基本和/或有一个默认的构造函数/非隐式构造函数,你可以只用你的类型替换int
…取决于用途。
使用typedef
代替实际数据类型可能更好。
例如
typedef int my_int; .... my_int var;
变为:
typedef int32 my_int; .... my_int var;
这样,您只需更改一行代码即可将int的所有实例更改为int32。