我正在为一个信号处理库开发一个类模板,它应该包含标量样本或标量样本的向量(例如,在帧式信号处理中很常见)。 这个类本质上是std::vector的外观,添加了一些方便的方法和成员。对于标量类型,一切都很好。但是,当我允许向量作为模板参数时,我遇到了麻烦。<< x << ","; return os << std
OpenCL内置的数学函数接受抽象的gentype作为参数类型,因此您只有一个exp(x)或log(x)函数,当您调用它们时,编译器会根据实际的参数类型自动切换到正确的函数。我需要编写其他数学函数来执行一组基本的代数运算,比如(log(a / b) - c) / d (无垂直向量代数),但有时是在float标量上,有时是在float4向量上。有没有一种干净的方法,只编写一次代码,然后让编译器根据参数类型切换相同的代码?
或者,如果我只编写float标量</em