2017-01-11 4 views
1

SOLO LEARNのC#メソッドを習ったばかりです。メソッドのパラメータには、アプリケーション自体のコンパイラがあり、Visual Studioとは全く異なるので、このコードを動作させることはできません。私はコンソールを実行しようとすると、それはすぐに私はConsole.Read()を持っているthoを閉じる。すぐにコードを通過しないコンソールが閉じる

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 


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


     } 

     void myFunc(int x) 
     { 
      int result = x/2; 
      Console.WriteLine(result); 
      Console.Read(); 
     } 
    } 
} 
+1

'Main'は、あなたがあなたのmyFuncというを呼び出しているanbything – Fred

+0

を実行していないが?。 –

+0

Main()メソッドでは何もしないためです。これがアプリケーションの出発点です。 – Mahdi

答えて

2

Main()からは何も呼び出しません。 Main()からmyFunc()を呼び出します。

static void Main(string[] args) 
{ 
    myFunc(4); 
} 

はまた、あなたがするmyFunc()を行う必要がありstatic

static void myFunc(int x) 

OR

あなたはProgramのインスタンスを作成し、静的myFunc()をせずに、この関数を呼び出すことができます(単にMain()メソッドを変更してください):

static void Main(string[] args) 
{ 
    Program p = new Program(); 
    p.myFunc(4); 
} 
+0

'x'に対応する引数はありません。 –

+0

編集された答えを参照してください。いくつかの値を 'myFunc'に渡します。 –

+0

私はそれらを行って、私はちょうど間違っていると仮定しました。それはオブジェクト参照が非静的メソッドまたはプロパティ 'Program.myFunc(int) –

0

メインの内部で作成した機能は実行されていません。 コンソールアプリケーションでは、static void Main(string[] args)はアプリケーションが起動する機能です。 したがって、アプリケーションを起動させるには、内部にmyFunc(int x)関数を実行する必要があります。

以下のような変更を加えます。

static void Main(string[] args) 
     { 
      myFunc(4); //You need to put an integer here    
     } 
関連する問題