假设我将C++ 11(我将使用Lambdas)中的代码编译为“.o”或库“.a”。
我有一个程序,其中将包含以前的库和头文件,该程序不能用C++ 11编译,而可以用旧的(C++ 98)编译。
它可以编译并正常工作吗?
最佳答案
如果满足以下条件,它将正常工作:
按照Vaughn Cato链接的GCC文档的
如果第3点是您唯一的问题,则可以通过编译一个动态库(取决于平台,如.so,.dynlib或Adrian所建议的DLL)来解决此问题,该库的所有依赖项在内部都是静态链接的,而不是导出的。虽然有点毛。