C++中CLI模块的基本类型有哪些
导读:本文共1537.5字符,通常情况下阅读需要5分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 数值类型对于基本的数值类型,在C++/CLI中是可以直接映射为托管类型的数值的,可以同时应用于托管类型和非托管类型,编译器会将其自动转换。基本类型System命名空间中对应的类注释/用法boolSystem::Booleanbool dirty = false;charSystem::SBytechar sp = ' ';signed charS... ...
目录
(为您整理了一些要点),点击可以直达。对于基本的数值类型,在C++/CLI中是可以直接映射为托管类型的数值的,可以同时应用于托管类型和非托管类型,编译器会将其自动转换。
基本类型
System命名空间中对应的类
注释/用法
bool
System::Boolean
bool dirty = false;
char
System::SByte
char sp = ' ';
signed char
System::SByte
signed char ch = -1;
unsigned char
System::Byte
unsigned char ch = '\0';
wchar_t
System::Char
wchar_t wch = ch;
short
System::Int16
short s = ch;
unsigned short
System::UInt16
unsigned short s = 0xffff;
int
System::Int32
int ival = s;
unsigned int
System::UInt32
unsigned int ui = 0xffffffff;
long
System::Int32
long lval = ival;
unsigned long
System::UInt32
unsigned long ul = ui;
long long
System::Int64
long long etime = ui;
unsigned long long
System::UInt64
unsigned long long mtime = etime;
float
System::Single
float f = 3.14f;
double
System::Double
double d = 3.14159;
long double
System::Double
long double d = 3.14159L;
字符串CLI已经内置了:System::String,但C++的常用字符串有char*、wchar_t*、std::string等好多种,编译器提供了char*、wchar_t*到System::String的自动转换:
另外,也可以使用gcnew创建托管字符串:
但是,对于System::String转char*,系统没有直接的语法支持。方法有很多种,我通常使用如下方式来转换:
这里有个需要注意的地方是在使用完转换出来的const char*后需要释放掉转换过程中的Intptr,如果没有太多需要考虑性能的地方,大可以使用一个std::string将其拷贝走,写成如下函数形式:
C++中CLI模块的基本类型有哪些的详细内容,希望对您有所帮助,信息来源于网络。