gpt4 book ai didi

C++ 版本,它们会自动检测 exe 的版本吗?

转载 作者:太空狗 更新时间:2023-10-29 23:25:20 25 4
gpt4 key购买 nike

好吧,我知道有多个 C++ 版本。我不太了解它们之间的区别,但我的问题是:
假设我在 C++ 11 中创建了一个 C++ 应用程序并将其发送到另一台计算机,它会从其他版本的 C++ 中出现错误,还是会自动检测它并使用该版本运行?
还是我弄错了,它是在编译时定义的吗?有人请告诉我,因为我还没有在谷歌上找到我的问题的单一答案。

最佳答案

这取决于您是将源代码复制到另一台机器并在那里编译,还是在您的机器上编译并将生成的二进制文件发送到另一台计算机。

C++ 由编译器翻译成机器代码,直接在处理器上运行。任何具有兼容处理器的计算机都能理解机器代码,但不仅如此。该程序需要与文件系统、图形适配器等接口(interface)。这部分通常由操作系统以不同的方式处理。即使其中一些是由 C++ 库抽象的,对操作系统的调用也是不同的,并且是特定于它的。

例如,即使两台计算机具有相同的处理器和硬件,为 ubuntu 编译的二进制文件也不会在 Windows 上运行。

如果您将源代码复制到另一台机器并在那里编译(或使用交叉编译器),如果您不使用特定于操作系统的功能,您的程序应该可以正常编译和运行。

C++ 版本对于编译很重要,如果你有 C++11 源代码,你当然需要一个支持 C++11 的编译器,但是一旦程序被编译,就不再重要了。

关于C++ 版本,它们会自动检测 exe 的版本吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40853709/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com