成功案例:
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)”;改用类型名来限定它