【问题标题】:Mod_Color.cs(55,55): Error CS0241: Default parameter specifiers are not permitted (CS0241) (Assembly-CSharp)Mod_Color.cs(55,55):错误 CS0241:不允许使用默认参数说明符 (CS0241) (Assembly-CSharp)
【发布时间】:2015-07-07 18:38:00
【问题描述】:

尝试在 C# 中编译某些内容时出现此错误(在 monodevelop unity 中) 请告诉我如何解决它

Mod_Color.cs(55,55): Error CS0241: Default parameter specifiers are not permitted (CS0241) (Assembly-CSharp)

代码:

namespace TestHack.RENDER
{
    using System;
    using System.Runtime.InteropServices;
    using UnityEngine;

    public class Mod_Color
    {
        private Color color;

        public Mod_Color(float r, float g, float b, float a = 255f)
        {
            this.color = new Color(r / 255f, g / 255f, b / 255f, a / 255f);
        }

        public Color Get()
        {
            return this.color;
        }
    }
}

【问题讨论】:

  • 您使用的是哪个版本的 Monodevelop,以及哪个版本的 Unity?
  • 两者中的最新版本。你有Skype吗?
  • 不,这不是它的工作方式 - Stack Overflow 不是通往个人调试服务的门户。编辑您的问题以指定准确的版本号以及其他相关内容。
  • 很确定如果乔恩提供了他的个人联系信息,他将永远无法入睡,但如果你想要他的电子邮件,只需拿起他的一本书 :) 并不是说​​他应该回答任何关于外面的话题不过这本书。

标签: c# unity3d compilation


【解决方案1】:

使用两个重载:

public class Mod_Color
{
    private Color color;

    public Mod_Color(float r, float g, float b)
    {
        this.color = Mod_Color(r, g, b, 255f);
    }

    public Mod_Color(float r, float g, float b, float a)
    {
        this.color = new Color(r / 255f, g / 255f, b / 255f, a / 255f);
    }

    public Color Get()
    {
        return this.color;
    }
}

您似乎正在使用不支持默认参数说明符的 .NET 框架或 Mono 框架。使用重载的工作方式相同,无需修改现有代码。

【讨论】:

  • c:\Users\NewFix\Documents\New Unity Project\Assets\RENDER\Mod_Color.cs(9,9):错误 CS0246:找不到类型或命名空间名称“Color”(您是否缺少 using 指令或程序集引用?)(CS0246)(TestHack)
  • 您使用的Color 命名空间在哪里?你的类文件顶部有using UnityEngine;吗?
猜你喜欢
  • 2011-12-10
  • 2011-09-17
  • 1970-01-01
  • 1970-01-01
  • 2013-12-27
  • 2014-09-28
  • 2014-12-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多