现在的位置: 首页 > 综合 > 正文

类型(基本篇)

2012年11月16日 ⁄ 综合 ⁄ 共 690字 ⁄ 字号 评论关闭

类型可描述为:

  • 内置数值类型(如 int 或 char),或 (这是系统定义类型)
  • 用户定义类型(如 class 或 interface)。(class是类,interface接口,后面的文章将会描述)
  • 匿名类型,它由一组封装在无名称引用类型中的公共属性组成。
  • 类型还可以定义为:
  • 值类型(C# 参考)(用于存储值)。这些类型包括基元数值类型、枚举和结构,还包括这几种类型的可以为 null 的版本。
  • 引用类型(C# 参考)(用于存储对实际数据的引用)。这些类型包括类、接口、数组和委托。

强制转换

数据类型之间的转换可以使用强制转换显式进行,但在某些情况下,也允许隐式转换。例如

static void
TestCasting()
{
    int i = 10;
    float f = 0;
    f = i;  
   
f = 0.5F;
    i = (int)f;  //
这样的转换会有数据丢失。

}

装箱和取消装箱

装箱和取消装箱使值类型能够被视为对象。对值类型装箱将把该值类型打包到 Object
引用类型的一个实例中。这使得值类型可以存储于垃圾回收堆中。取消装箱将从对象中提取值类型。在此示例中,整型变量 i 被“装箱”并赋值给对象 o

int i = 123;
object o = (object)i;  // 装箱

o = 123;
i = (int)o;  // 取消装箱

 

上面有说到

 

  • 类型还可以定义为:
  • 值类型(C# 参考)(用于存储值)。这些类型包括基元数值类型、枚举和结构,还包括这几种类型的可以为 null 的版本。
  • 引用类型(C# 参考)(用于存储对实际数据的引用)。这些类型包括类、接口、数组和委托

     

    值类型主要由两类组成:

     

    结构分为以下几类:

    • Numeric(数值)类型

    • 用户定义的结构。

     

  • 抱歉!评论已关闭.