为什么我不能从类中访问类strait内声明的变量

时间:2012-10-01 13:01:00

标签: c# class

我的意思是,例如,如果我在这样的类中声明一个int i:

class NewClass
{
int i;

}

我无法从类中访问它:

class NewClass
{

int i;
i=5; //gives me an error
}

我尝试将'i'变量设为静态,但也没有帮助(NewClass.i = 5也给了我一个错误)。

我遇到的另一个问题是:

class NewClass
{
Board NewBoard2 = new Board();
public NewClass (Board NewBoard)
{
NewBoard2=NewBoard
}enter code here
//here I can't access nor NewBoard or NewBoard2
}  

我没有在相当长的时间内编写代码,所以这就是为什么我有这些愚蠢的问题...谢谢你的帮助

2 个答案:

答案 0 :(得分:2)

您不能将语句(除了声明和声明与赋值之外)直接放在类定义中。代码需要在方法(或ctor,dtor,静态初始化块)中。

答案 1 :(得分:1)

你不能这样做:

class NewClass 
{ 
int i; 
i=5; //gives me an error 
} 

你需要一个代码类的方法,例如:

class NewClass 
{ 
 int i; 
 public void set_i()
 {
  i=5;
 }
}

所以在这里你们这个更大的班级:

class NewClass 
{ 
Board NewBoard2 = new Board(); 
public NewClass (Board NewBoard) 
{ 
NewBoard2=NewBoard 
}enter code here 
//here I can't access nor NewBoard or NewBoard2 
}  

那不行,但

class NewClass 
{ 
Board NewBoard2 = new Board(); 
public NewClass (Board NewBoard) 
{ 
NewBoard2=NewBoard; 
// You can use NewBoard, or NewBoard2 here.
}

public void dostuff()
{
//You can use NewBoard2 here...
}
}