C# C可以像在目标C中一样在main之前或之后运行代码吗
GNU Objective-C运行时提供了一种方法,允许您在程序执行进入主函数之前执行代码。代码通过一个特殊的类方法+加载在每个类和每个类别的基础上执行 更新:我在下面看到的答案并不令人满意。从主程序调用函数没有什么特别的。问题是如何挂接系统,即系统调用函数时,程序甚至在运行时都不知道该函数C# C可以像在目标C中一样在main之前或之后运行代码吗,c#,objective-c,static-methods,C#,Objective C,Static Methods,GNU Objective-C运行时提供了一种方法,允许您在程序执行进入主函数之前执行代码。代码通过一个特殊的类方法+加载在每个类和每个类别的基础上执行 更新:我在下面看到的答案并不令人满意。从主程序调用函数没有什么特别的。问题是如何挂接系统,即系统调用函数时,程序甚至在运行时都不知道该函数 而不是目标C,参见VisualC++中的文章,感谢StopFoIP家伙回答我的前一个问题: 否则,Objective C运行时不需要包含此加载方法。主入口点当然存在于目标C程序中,如果只需在主方法中调用一
而不是目标C,参见VisualC++中的文章,感谢StopFoIP家伙回答我的前一个问题:
否则,Objective C运行时不需要包含此加载方法。主入口点当然存在于目标C程序中,如果只需在主方法中调用一个静态方法就足够了,那也没什么大不了的:在OOP语言中,因为主函数总是在类中,所以在执行主函数之前,总有一种方法可以运行一些代码。在Java中,它被称为。C语言中也有类似的机制 代码示例:
namespace CSharpConsoleTest
{
class Program
{
static Program()
{
Console.WriteLine("Test123");
}
static void Main(string[] args)
{
Console.WriteLine("Test111");
}
}
}
关键是要能够初始化类内的静态变量,因为它们是在实例变量之前创建的。在c中寻找的是类构造函数在前面运行,类析构函数在后面运行 这里是一个教程的链接
实际上,GNU Objective-C运行时不需要包含load方法。苹果版的可可中不存在这种物质。为什么你认为你需要它?比方说,我想为一类应用程序创建一个容器,我不想让应用程序知道任何管道,比如我要设置的一些系统变量,或者其他任何东西。这只是举个例子。load方法肯定存在于Cocoa中,而且从10.0开始就一直存在。