c#问题:名称在类或命名空间中不存在

来源:百度知道 编辑:UC知道 时间:2024/05/28 01:51:24
using System;

namespace hhxxdry
{

public class E
{

public static void Main(string[] args)
{
int k;
double count,e;
double[] T=new double [100];
T[0]=1.0;
e=1.0;
count=0;
for(k=0;k<=20;k++)
{
T[k+1]=T[k]/k+1;
Console.WriteLine("T[{0}]的值是:{1}",k+1,T[k+1]);
count++;
e=e+1/T[k+1];

}
E aa=new E();

}

public E()
{
Console.WriteLine("e的值是{0}",e);
Console.WriteLine("1/k!的值是{0}",count);

}

}
}
运行后:

C:\Documents and Settings\Administrator\My Documents\Visual Studio Projects\hhxxdry\Class1.cs(32): 名称“e”在类或命名空间“hhxxdry.E”中不存在
C:\Documents and Settings\Administrator\My Documents\Visual Studio Projects\hhxxdry\Class1.cs(33): 名称“count”在类或命名空间“hhxx

e 和count是在main函数中定义的局部变量,当然在hhxxdry.E中无法访问。

修改后正确运行。
问题在于Main函数也是类的一个成员函数,成员函数里定义的局部变量不能被其他成员函数使用。
不对之处欢迎批评指正。
using System;

namespace hhxxdry
{
public class E
{
//修改之处:
private static double count, e;
public static void Main(string[] args)
{
int k;
double[] T = new double[100];
T[0] = 1.0;
e = 1.0;
count = 0;
for (k = 0; k <= 20; k++)
{
T[k + 1] = T[k] / k + 1;
Console.WriteLine("T[{0}]的值是:{1}", k + 1, T[k + 1]);
count++;
e = e + 1 / T[k + 1];

}
E aa = new E();

}
public E()
{
Console.WriteLine("e的值是{0}", e);
Console.WriteLine("1/k!的值