我遇到过这样的代码:
template<class T> extern void f(T a);
Run Code Online (Sandbox Code Playgroud)
在.h文件中,f()在cpp文件中定义了几个特定的T.
我无法找到有关此语法的任何解释.我已经看到extern模板是在c ++ 11中引入的,但它们似乎有不同的语法......
有人可以详细说明吗?
谢谢
我有一个使用SSSE3内部命令的代码(注意三S)和运行时检查是否使用它,因此我假设应用程序应该在没有SSSE3支持的CPU上执行.但是,当使用-mssse3和-O1优化时,编译器还会插入我没有明确调用的SSSE3指令,因此程序崩溃.
有什么方法可以在我明确调用相关的内部函数时启用SSSE3代码,但是阻止编译器添加自己的SSSE3代码?
请注意,我无法禁用-O1优化.