我正在尝试在我制作的新课程中制作一个方法......
public void CalcDrinks(bool HealthOption)
{
if (HealthOption)
{
CostOfBeverage = 5M;
}
else
{
CostOfBeverage = 20M;
}
}
我一直在虚空之下得到一个红色的波浪形......“预期的类,代表,枚举,界面或结构错误”
我不确定我错过了什么......
答案 0 :(得分:7)
如果方法在类的外部被声明,那么你就会得到那个错误。
namespace Blah
{
public void CalcDrinks(bool HealthOption)
{
if (HealthOption)
{
CostOfBeverage = 5M;
}
else
{
CostOfBeverage = 20M;
}
}
}
在此片段中,没有可见的类定义。将其修复到下面并查看它是否已编译。
public class Foo
{
private decimal CostOfBeverage;
public void CalcDrinks(bool HealthOption)
{
if (HealthOption)
{
CostOfBeverage = 5M;
}
else
{
CostOfBeverage = 20M;
}
}
}
答案 1 :(得分:4)
确保方法在类中,并且类/属性/其他方法在方法排列之前和之后括起来。还要确保前一个语句有;
(分号)。
这个问题通常会发生,因为你在方法之前有不匹配的大括号,或者你的分号丢失了:
namespace A
{
public class AA
{
public string B {get; set; }
public string C {get; set; }
public void ShowD()
{
DoSomething;
}
}
}
namespace A
{
public class AA
{
public string B { get; set; }
public string C {get; set; // <--Note missing brace)
public void ShowD()
{
DoSomething;
}
}
}
答案 2 :(得分:1)
您在示例中缺少一些代码,但根据错误消息,您的函数在类之外声明。您的方法的代码必须嵌套在您的类中。