C++ 托管代码是否比非托管代码慢?

C++ 托管代码是否比非托管代码慢?,c++,.net,C++,.net,这只是一个出于好奇的问题。虽然总体上考虑了框架和执行过程中涉及的步骤,但我还是同意。不过,我还想考虑内存/磁盘访问和网络等限制非托管代码性能的因素。 < P>引用Habor萨特 “首先,JIT编译不是主要问题。根本原因更为根本:托管语言进行了精心的设计权衡,以优化程序员的生产力,即使这从根本上与性能效率相矛盾,并以牺牲性能效率为代价。” “预防”和“治愈”总是不可避免的,在性能优化方面,C++总是选择“预防”,而管理语言则用上述的英雄努力和更多的选择来选择“治疗”。但旧的盎司/磅说法是不可避免的

这只是一个出于好奇的问题。虽然总体上考虑了框架和执行过程中涉及的步骤,但我还是同意。不过,我还想考虑内存/磁盘访问和网络等限制非托管代码性能的因素。

< P>引用Habor萨特

“首先,JIT编译不是主要问题。根本原因更为根本:托管语言进行了精心的设计权衡,以优化程序员的生产力,即使这从根本上与性能效率相矛盾,并以牺牲性能效率为代价。”

“预防”和“治愈”总是不可避免的,在性能优化方面,C++总是选择“预防”,而管理语言则用上述的英雄努力和更多的选择来选择“治疗”。但旧的盎司/磅说法是不可避免的;你无法战胜预防(部分原因是你总是可以在第一次做预防之后添加治疗,但不是相反),如果你主要关心性能和控制,那么你应该使用一种设计用于预先确定优先级的语言,仅此而已

为了更清楚,您可以参考本文


也许互联网搜索会有所帮助???答案很简单:不,这要看情况而定。一般来说,如果你正在进行网络或磁盘访问,那么运行的速度可能仅限于磁盘或网络的速度。但是,如果没有对代码的测量或彻底理解(以及如何将其转换为中间(.net字节码)或机器语言),就不可能这么说。