为什么以下代码有误?五

时间:2014-02-08 23:31:36

标签: c#

class Program
{
    static void Main(string[] args)
    {
       string s= sum("jfjf");

    }


     void sum(string xx)
    {
        Console.WriteLine(xx);

    }
}

2 个答案:

答案 0 :(得分:3)

您的方法返回void,这意味着,但您尝试将其分配给字符串。

如下所示更改方法定义:

static string sum(string xx)
{
    Console.WriteLine(xx);
    return xx;
}

或者不要尝试分配它,只需调用方法:

sum("jfjf");

您应该将其设置为静态,因为您的Main方法是静态的。您无法在静态上下文中调用非静态方法。

答案 1 :(得分:1)

您正尝试从静态方法调用实例方法,该方法无效。此外,您必须从方法返回一个字符串,因为调用者期望它。

将其更改为:

class Program
{
    static void Main(string[] args)
    {
       string s= sum("jfjf");

    }


    static string sum(string xx)
    {
        Console.WriteLine(xx);
        return xx;

    }
}