0
4

4 回答 4

1

您需要将函数声明为静态:

static string function1(string x)
{
    ...
}

当您像示例中那样创建类Program时,如果您首先声明该类的实例,则只能调用非静态方法。静态方法不需要Program类的实例。在您的示例中,您无需担心任何属性或类变量,因此将函数声明为静态是有意义的。

于 2013-01-28T22:55:40.973 回答
0

您必须将 static 关键字放在 function1 前面,例如

static string function1(string x)
于 2013-01-28T22:55:44.843 回答
0

您的 Main() 函数是静态的(每个类一个),而您的 function1() 函数不是(每个实例一个)。在“string function1(string x)”之前添加“static”应该可以为您解决这个问题。

于 2013-01-28T22:56:24.140 回答
0

完整代码

namespace FirstConsoleApplication
{
class Program
    {   
        static void Main(string[] args)
        {

            Console.WriteLine("Type in an integer vale");
            string num;
            num = Console.ReadLine();
            string result1 = function1(num);
            Console.WriteLine(result1);
            Console.ReadLine();
        }

        static string function1(string x)
        {
            Int32 isnumber = 0;
            bool canConvert = Int32.TryParse(x, out isnumber);
            string returnValue;
            if (canConvert == true)
            {
                int val3 = Int32.Parse(x);

                switch (val3)
                {
                    case 50:
                        returnValue = "yep its 50";
                        break;
                    case 51:
                        returnValue = "hmmm.... its 51... what are you gonna do about that??";
                        break;
                    case 52:
                        returnValue = "lets not get sloppy now...";
                        break;
                    default:
                        returnValue = "nope, its definately something else";
                        break;
                };

            }
            else
            {
                returnValue = "Thats not a number";
            };
            return returnValue;
        }
    }
}
于 2013-01-28T22:57:10.303 回答