成功案例:
using System;
class SetArray
{
public void PrintArr(int ArrLength)
{
int [] arr=new int [ArrLength];
for (int i=0;i<arr.Length ;i++ )
arr[i]=i;
Console.WriteLine("Print arrs");
for (int i=0;i<arr.Length ;i++ )
Console.WriteLine("arr[{0}]={1}",i,arr[i]);
}
}
public class TestN
{
public static void Main()
{
SetArray arr=new SetArray();
int i=1;
while (i>0)
{
Console.WriteLine("please in put the arr:");
i=Int32.Parse(Console.ReadLine());
arr.PrintArr(i);
}
}
}
新建另外一個class,就可以不要static了。
另一種寫法
using System;
class TestM
{
static void PrintArr(int ArrLength)
{
int [] arr=new int [ArrLength];
for (int i=0;i<arr.Length ;i++ )
arr[i]=i;
Console.WriteLine("Print arrs");
for (int i=0;i<arr.Length ;i++ )
Console.WriteLine("arr[{0}]={1}",i,arr[i]);
}
public static void Main()
{
int i=1;
while (i>0)
{
Console.WriteLine("please in put the arr:");
i=Int32.Parse(Console.ReadLine());
PrintArr(i);
}
}
}
出現過的錯誤:
TestN.cs(18,3): error CS0118: “TestN.PrintArr(int)”是“方法”,但此處被當做“類型”來使用
TestN.cs(27,4): error CS0176: 無法使用實例引用訪問靜態成員“SetArray.PrintArr(int)”;改用類型名來限定它