外部模板是 c++11 扩展是什么意思



使用 XCode 4.2 编译 crypto++ 时,我收到多个警告,所有实例都是"extern 模板是 c++11 扩展"。这是什么意思,这会影响输出可执行文件的兼容性吗?

声明模板"extern"意味着编译器不应在此翻译单元中实例化给定模板,因为它已经在另一个翻译单元中实例化。这样做是为了减少编译时间。

此功能已随 C++11 一起添加,因此未实际指示编译器在 C++11 模式下运行但意识到该问题可能会生成类似您看到的警告。

参考维基百科。

相关内容

最新更新