C#类的方法互相调用有关问题,非静态方法要如何实现
C#类的方法互相调用问题,非静态方法要怎么实现?
A类实例化的对象是在main中完成的,但是B类要调用A类的话如何实现? 这个对象在main中B类访问不到啊
------解决方案--------------------
当然访问不到,因为main运行完了,这个局部变量都不存在了。
你有两个选择,一个是将这个对象定义为成员变量,延长它的生命周期。
一个是,如果B也是在Main中被调用的,可以把这个变量传入。
A类实例化的对象是在main中完成的,但是B类要调用A类的话如何实现? 这个对象在main中B类访问不到啊
------解决方案--------------------
当然访问不到,因为main运行完了,这个局部变量都不存在了。
你有两个选择,一个是将这个对象定义为成员变量,延长它的生命周期。
class Program
{
static public A a;
static void Main()
{
a = new A();
}
}
class B
{
public void foo()
{
Program.a ...
}
}
一个是,如果B也是在Main中被调用的,可以把这个变量传入。
static void Main()
{
A a = new A();
new B().foo(a);
}
class B
{
public void foo(A a)
{
a ...
}
}