以上链接提供两种方法,方法一亲测有效。在使用CheckSysEnvironmentExist()这个函数时,不可以直接在中函数中调用,因为该方法并不是一个静态方法(其余方法都是static修饰的静态函数),如果要使用该函数有两种方法:
1、new一个Program对象,来调用该函数;
2、使用static修饰该函数,在主函数中直接调用。
那么这是什么原理呢?
为什么要使用static变量或函数
有一些频繁使用的东西,如果你每次使用都重新new一下,那么这个开销可能会很高,如果使用static,一直放在内存中,那么想用就直接用,而不需要重新new一块空间初始化数据。那么static就是为了实现一个系统的缓存作用的,其生命周期直到应用程序退出结束。(上面链接原话)
所以如果一个类为静态类,则该类下的函数必须为静态函数,否则无法使用;
如果一个类不是静态类,该类中的函数可以声明为静态或者费静态。对于静态类直接可以在主函数中用函数名来调用,对于非静态类需要实例化对象,通过对象来调用。
c#的主函数必须设置为static,因为这是函数入口,无法还没有进入函数就对其实例化,所以必须设置为静态函数。