我可以在c++ 11中创建一个静态库并在c++ 03中调用它吗?

Can I create a static library in C++11 and call it from C++03?

本文关键字:c++ 调用 静态 创建 我可以 一个      更新时间:2023-10-16

如果我创建一个c++ 03兼容的头文件,并使用相同的编译器(g++),这将工作吗?

一般来说,是的。编译模块后,接口往往是最重要的部分。

但是,可能存在ABI问题,这取决于名称混淆或类似的事情是否发生了变化。如果您可以将它用作共享库,那么您也很有可能静态地使用它。 然而,更重要的是标准库版本。这些很可能会发生变化,因此无论如何都应该避免在两者之间传递std对象。