3

请帮助我试图理解

  • 什么是 C# 中的复合数据类型
  • 自定义数据类型和复合类型在 C# 中是否相同

我需要在 WCF 服务中使用它,因此我需要对它有更清晰的理解。

4

1 回答 1

18

复合数据类型可以分为多种其他类型。一个包含更多盒子的盒子,如果你愿意的话。如果一个框是空的,那么它是一种基本数据类型。包含另一个盒子的盒子是复合类型,因为您可以将它分成更小的类型。

假设您有一个代表游戏中暴徒的类型。您如何将其划分为更小的对象以更好地理解和表示它?

该暴徒包含信息,例如其名称、攻击、生命值和装备。

现在,它的名字可以表示为一个字符串,所以它是一个基本类型。生命值用一个数字表示,所以它也是一个简单的类型。空盒子,如果你按照我上面的例子。

但是它的设备呢?它可以用复合类型表示。为了这个例子,一个字符串数组。每个暴徒都有一个它携带的物品清单。它可以携带“剑”、“靴子”或其他任何东西。数组是一种复合类型,因为您可以将它分成一堆对象(字符串 [] = 多个字符串对象)。

现在,对于它的攻击。我们需要的不仅仅是一个字符串或数字来表示一次攻击。我们需要一个名称,以及它造成的伤害量,以及它可以造成的额外效果。这将是一个包含其他框的框。

最后,您可以将复合类型(类、数组、结构)视为一棵树:

int[]
    int
    int
    int
    int

person
    name
    address
        civic number
        street
        city
    birth date

希望能帮助你理解。

于 2013-03-10T20:19:51.460 回答