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
Noob担忧:新的void方法存在问题。C#_C# - Fatal编程技术网

Noob担忧:新的void方法存在问题。C#

Noob担忧:新的void方法存在问题。C#,c#,C#,我正在尝试在我创建的新类中创建一个方法 public void CalcDrinks(bool HealthOption) { if (HealthOption) { CostOfBeverage = 5M; } else { CostOfBeverage = 20M; } } 我一直在空白处看到一条红色的曲线说。。。应为类、委托、枚举、接口或结构错误 我不确定我错过了什么 确保该方法位于类内部,并且该类/属

我正在尝试在我创建的新类中创建一个方法

public void CalcDrinks(bool HealthOption) 
{
    if (HealthOption)
    {
        CostOfBeverage = 5M; 
    }
    else
    {
        CostOfBeverage = 20M; 
    }
}
我一直在空白处看到一条红色的曲线说。。。应为类、委托、枚举、接口或结构错误


我不确定我错过了什么

确保该方法位于类内部,并且该类/属性/其他方法在该方法排列之前和之后用括号括起来。还要确保前面的语句有一个
(分号)

出现此问题的原因通常是方法前面的大括号不匹配或缺少分号:

对的 不正确
名称空间A
{
公营AA级
{
公共字符串B{get;set;}

公共字符串C{get;set;//如果在类之外声明该方法,则会得到该错误

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;
        }
    }
}

示例中缺少一些代码,但根据错误消息,函数在类之外声明。方法的代码必须嵌套在类中。

确保方法声明在类块中。在文件中查找
公共类…
行,并将方法放在大括号中然后看看错误是否消失。上面的代码没有问题。也许你可以发布整个源代码文件(如果不是太多行的话)由于该错误可能在此方法外部。在我看来,您正在尝试在类外部定义该方法…请检查大括号。我们可以查看文件的其余部分吗?这可能是上下文问题。此错误消息表示您在类声明外部声明了方法。因此,您尝试是在全局命名空间中,还是您在编写类时出错。您能发布整个代码吗?@MonuMan5:请编辑您的原始问题以添加代码,而不是其中的一个答案。哇……是的。我确实这样搞砸了。我想我爱上了StackOverflow!谢谢您的帮助。=D
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;
        }
    }
}