|
|
1
7
C语言不做内联,但是.NET CLR JIT编译器可以。 虚拟可以在密封类中内联,但我不确定非密封类。我想不会。 首次调用函数时,JIT会在代码执行之前进行优化。因为在JIT开始工作之前,您没有任何要执行的代码。:p jit仅在对函数的第一次调用中发生一次,而不是在对函数的每次调用中发生。 还要注意,内联只在程序集(dll)内完成。JIT编译器不会将代码从另一个程序集复制到该程序集的代码中。 |
|
|
2
7
C不显式支持任何内联。在进行优化时,JIT编译器可能会在后台执行一些内嵌操作。 |
|
|
3
4
C编译器本身不做内联(您可以通过在Reflector中打开程序集来验证)。clr的jit编译器执行内联,这里是 one blog post 关于这个问题(还有很多)。 注意,通常,.NET编译器不能跨DLL边界执行内联,因为DLL可以更改 之后 依赖dll的代码已编译。所以在运行时进行内联是有意义的。 |
|
|
A B · C#Excel自动调整列避免长文本时出错 1 年前 |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 1 年前 |
|
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 1 年前 |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 1 年前 |