我使用 OpenCL cl_float4 类型来表示几何向量。
如何为 cl_float4 创建覆盖运算符?我可以把它们放在单独的文件中吗?
当然,为什么不呢。
这进入 .h 文件:
cl_float4
operator+ (const cl_float4& lhs, const cl_float4& rhs);
这进入 .cpp 文件:
cl_float4
operator+ (const cl_float4& lhs, const cl_float4& rhs)
{
cl_float4 result;
for (uint i = 0; i < 4; ++i)
{
result.s[i] = lhs.s[i] + rhs.s[i];
}
return result;
}
或者您可能希望添加的任何其他实现。