Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在unity3d中,如何使用类';父亲';这班有贵重物品吗?_C#_Unity3d - Fatal编程技术网

C# 在unity3d中,如何使用类';父亲';这班有贵重物品吗?

C# 在unity3d中,如何使用类';父亲';这班有贵重物品吗?,c#,unity3d,C#,Unity3d,我正在为坦克游戏中的弹药制作一些C#脚本 我刚刚发现,对于所有类型的弹药,比如炮弹和火箭,总是有一些相似的点,比如伤害和射程。所以我想做的是首先编写一个名为Ammo的脚本,保存所有类似的点,然后构建两个名为Shell和Rocket的脚本,作为Ammo类的子类。然后我可以在弹药课上重复使用类似的贵重物品。然而,C#不允许我这么做。具体地说,火箭和炮弹类不能使用弹药类中的贵重物品 如何修复它?将变量标记为受保护的(或公共的),而不是私有的 如果变量/函数未标记为public/private/prot

我正在为坦克游戏中的弹药制作一些C#脚本

我刚刚发现,对于所有类型的弹药,比如炮弹和火箭,总是有一些相似的点,比如伤害和射程。所以我想做的是首先编写一个名为Ammo的脚本,保存所有类似的点,然后构建两个名为Shell和Rocket的脚本,作为Ammo类的子类。然后我可以在弹药课上重复使用类似的贵重物品。然而,C#不允许我这么做。具体地说,火箭和炮弹类不能使用弹药类中的贵重物品


如何修复它?

将变量标记为
受保护的
(或
公共的
),而不是
私有的

如果变量/函数未标记为
public/private/protected
,则只需在开头添加
protected
,如下所示:

protected int m_Health = 100;

不清楚你在问什么,但C当然支持继承。你能发布一些代码片段吗?可能只是一个简单的保护问题,因为@Sayse是正确的。我在unity中做了几乎相同的设置,它当然可以工作