我知道原则上这可能是未定义的行为,但为了处理大型项目,这里是关于GCC的问题:
假设我使用完全相同的编译器安装编译一个转换单元gcc -std=c++98,另一个-std=c++11使用.是否有任何保证可以链接两个目标文件并获得定义良好的程序?
据我所知,由于不同的宏,潜在的问题只能来自库头的不同视图,而这些问题反过来最多只能将新的成员函数添加到标准库类中,而不是成员对象.
这会以某种方式使用不同的语言方言选项编译更大项目的不同部分是否可以接受?
更新:我应该添加一个正交的问题:如何使用两个不同版本的GCC(比如4.3和4.6),但是同一个方言选项(-std=c++98)?此GCC文档中的列表似乎表明该库在4.2.2和4.6之间兼容.