我对JIT编译器的工作原理有点困惑.我知道C#编译成IL.第一次运行它是JIT'd.这是否涉及将其翻译成本机代码?.NET运行时(作为虚拟机吗?)是否与JIT代码交互?我知道这很天真,但我真的很困惑.我的印象一直是.NET运行时没有解释程序集,但我不了解交互的细节.
我对C++非常熟悉,所以我考虑学习.NET及其所有衍生物(尤其是C#).
一路上我遇到了C++/CLI,我想知道该语言是否有任何特定用途?它只是假设是从原生C++转换为C#的中间语言吗?
突然出现的另一个问题是为什么.NET框架中仍有这么多编程语言?(VB,C++/CLI,C#...)