小编Cod*_*ack的帖子

类和对象继承

更新

好的,所以我正在玩类和继承,我正在尝试做一些我以前在一个源代码是C++的游戏中做过的事情,我想知道这里是否有人可以帮助我理解如何用C#来做.

我想做的是两件事:

首先当我创建某个类的对象时,我想将一个整数传递给构造函数,并使用该整数来确定将初始化哪个sublcass.

像这样:职业newVoc = new Vocation(1); 并且1将选择具有该VocationId的第一个sublcass或子类.

第二件事,我已经有一个从Creature Class继承的Player类,但是我希望Player Class本身包含一个Vocation对象.所以我可以设置职业,当我进行属性更改并且播放器具有不同的属性时...这是示例代码,试图用我所说的,希望有人理解我的意思.

好的,我现在收到错误.无法隐式转换类型Mage' toVocation'

这就是我得到的......

Vocation.cs

using UnityEngine;
using System.Collections;

public enum VocationType { Mage, Warrior }

public class Vocation
{

}

public static class VocationFactory
{
    public static Vocation CreateVocation(VocationType type)
    {
        switch (type)
        {
            case VocationType.Mage:
                {
                    return new Mage();
                    break;
                }
        }
    }
}

public class Mage
{
    public string Name = "Mage";

    public Mage()
    {

    }
}
Run Code Online (Sandbox Code Playgroud)

Player.cs

using UnityEngine;
using System.Collections;

public class …
Run Code Online (Sandbox Code Playgroud)

c# inheritance class

0
推荐指数
1
解决办法
62
查看次数

标签 统计

c# ×1

class ×1

inheritance ×1