为什么 libc++ 不支持多重集上的 class 模板参数推导?

Why does libc++ not support class template argument deduction on multiset?

#include <set>

int main()
{
    auto coll = std::multiset{ 1, 2, 2, 3, 4, 4, 7 };
}

上面的代码可以被vc++ 2019g++ 9.0编译,但不能被clang++ 8.0编译为clang++ -std=c++2a -stdlib=libc++ main.cpp

为什么 libc++ 不支持 class 多重集上的模板参数推导?

因为直到最近 someone to implement it

这些功能不会自己写,不同的项目优先考虑不同的事情。

您当然可以自由加入该项目并贡献您认为缺少的任何功能!

这已为即将发布的 clang 9 版本实现。