C++ 从初始值设定项列表创建simd::float2

C++ 从初始值设定项列表创建simd::float2,c++,macos,clang,C++,Macos,Clang,我无法从初始值设定项列表创建: #include <simd/simd.h> void f(simd::float2) { } int main() { f({0.0f,0.0f}); // Doesn't work f(simd::float2{0.0f,0.0f}); // Works } 有办法解决这个问题吗?我希望尽可能保持代码向量类型的不可知性。重载函数?相关构造函数是否显式?重载函数?相关构造函数是否显式? candidate function no

我无法从初始值设定项列表创建:

#include <simd/simd.h>

void f(simd::float2) { }

int main() {
    f({0.0f,0.0f}); // Doesn't work
    f(simd::float2{0.0f,0.0f}); // Works
}

有办法解决这个问题吗?我希望尽可能保持代码向量类型的不可知性。

重载函数?相关构造函数是否显式?重载函数?相关构造函数是否显式?
candidate function not viable: cannot convert initializer list argument
      to 'simd::float2' (aka 'simd_float2')