mercredi 28 décembre 2016

Why does [std::is_move_assignable] not behave as expected?

#include <unordered_map>
#include <type_traits>

int main()
{
        std::unordered_multimap<int, string> m;
        auto b = std::is_move_assignable_v<decltype(*m.begin())>;
        // b is true

        auto v = *m4.begin(); // ok
        v = *m4.begin(); // error
}

Issue:

If b is true, then v = *m4.begin(); should be ok.

Question:

Why does std::is_move_assignable not behave as expected?

Aucun commentaire:

Enregistrer un commentaire