昨天和一个做c++的同事聊天,问他平时用什么IDE,他说对IDE没啥要求,vscode就行,代码大部分都是放在开发机编译运行的,因为c++很多依赖在Mac上没有,不像其他语言有runtime。
听到runtime我突然有了以下疑惑:
1、runtime是什么?
2、runtime有什么用?
我后来也查了一些资料,有了一些基本的认识。
关于问题1,runtime翻译过来就是(程序)运行时,它可以指程序运行的一种状态;也可以指程序运行时所需要的环境;还可以指程序运行所依赖的库或指令。在不同语义环境下有不同的解释,我觉得同事说的应该更像是第二种解释。
关于问题2,很显然这个问题也就是后两种解释,用于提供运行的环境或者运行所必须依赖的库。

这么看来,任何高级语言包括c++,它们运行时都需要runtime来提供支持,只是c++需要很小的runtime即可,java,c#这类则需要一个比较大的runtime来管理诸如gc,内存分配等工作。
展开
评论