第二章 C++/CLI基础
C++/CLI中的变量和数据类型
….
为了方便c++程序员,旧有的数据类型都是.net基本类型的别名。
….
int x,y,z;//三个整型变量
String* pointername,isNoTaPointer;//一个指针
String^ handlename,isNoTaHandle;//一个handle
String* pointername,*anotherPointer;//两个指针
String^ handlename,^anotherHandle;//两个handle
两个词的关键字
上下文敏感的关键字(微软叫它标识符identifiers)
预定义的数据类型
分为两类:基本的,引用的。
基本类型
基本的数据类型:整数,浮点数,十进制数,布尔值,字符。
整数:8个(有符号4个,无符号4个)
注意:char(8位)和System:Char(16位unicode)不同。char对应的是System:Sbyte。
/*Begin=========
using namespace System;
int main()
{
Console::WriteLine(L"Hello World");
///
//Console::WriteLine(L"{0},{1},{2}");
//__int
char v='F';
short w(123);
int x=45678;
long y=987654321;
Int64 z=0xfedcba9876543210;
Console::WriteLine(v);
Console::WriteLine(w);
Console::WriteLine(x.ToString());
Console::WriteLine(y);
Console::WriteLine(z);
Console::WriteLine(z.ToString());
return 0;
}
End=========================*/
上面的每一个变量都有tostring方法,因为在c++/cli中他们都是对象。
浮点数:float(7位有意义),double(15位有意义)
double是缺省的浮点类型。//float f=123.456;编译器警告truncate double to float
十进位数:System:Decimal 28个有效位。
当有效位大于15时的Decimal初始化比较特殊:有三种方法。
布尔型
<skip>
字符型
只有这一个wchart_t。 System::Char的别名。
注意:尤其是c++程序员要注意,char 不同于System::Char
引用类型
//介绍了System::object 和 System::String
<skip>