错误CS0116:命名空间不能直接包含诸如字段或方法之类的成员 - 使用记事本手写编码

时间:2016-04-15 22:35:07

标签: c#

使用foreach获取第16行的错误。我的教授不会发送足够快的电子邮件,截止日期是几个小时!我想我错过了一个清单或其他东西。我认为双重后的d是不正确的。任何帮助都是预先确定的!

using System;
using System.Windows.Forms;
using System.Collections.Generic;

public class Starbucks
{
 public static void Main()
{
 double[] x = {4.2, 5.7, 3.6, 9.1, 2.7, 8.4 };
 }
}

static void MyGenerics(double x)
{
 foreach (double d in x)
 {
  MessageBox.Show(x);
 }
}

2 个答案:

答案 0 :(得分:1)

那是因为你已经在课程MyGenerics()之外定义了Starbucks方法。把它移到课堂里。错误消息正好说明了同样的事情。您的代码应该是

using System;
using System.Windows.Forms;
using System.Collections.Generic;

public class Starbucks
{
 public static void Main()
{
  double[] x = {4.2, 5.7, 3.6, 9.1, 2.7, 8.4 };
  MyGenerics(x);
 }

static void MyGenerics(double[] xx)
{
 foreach (double d in xx)
 {
  MessageBox.Show(d);
 }
}
}

答案 1 :(得分:-1)

此问题可能是由于缩进不良引起的。例如:

using System;

namespace Interrogacion_1.Model
{
    interface IClass
    {
        public string Name { get; set; }
    }
    {
        Console.WriteLine("HELLO WORLD"); #here error cs0116
    }
}

正确的方法是:

using System;

namespace Interrogacion_1.Model
{
    interface IClass
    {
        public string Name { get; set; }
        public void Imprimir()
        {
            Console.WriteLine("HELLO WORLD");
        }
    }
}