0
4

4 に答える 4

1

関数を静的として宣言する必要があります。

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

例のようにクラスを作成するProgram場合、最初にそのクラスのインスタンスを宣言した場合にのみ、非静的メソッドを呼び出すことができます。Program静的メソッドは、クラスのインスタンスを必要としません。あなたの例では、心配するプロパティやクラス変数がないため、関数を静的として宣言することは理にかなっています。

于 2013-01-28T22:55:40.973 に答える
0

function1 のように static キーワードを前に置く必要があります

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

Main() 関数は静的 (クラスごとに 1 つ) ですが、function1() 関数はそうではありません (インスタンスごとに 1 つ)。「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 に答える