私はクラスAを持っています
struct A
{
A() = delete;
A(const A&) = default;
A& operator=(const A&) = default;
A(A&&) = default;
A& operator=(A&&) = default;
explicit A(int i) ....
// a few explicit constructors
}
以下のように unordered_map に格納されている strcut A を取得しようとしているとき:
auto a = my_map[key_];
私は得る
削除されたメソッドの不正使用
エラー。私の理解では、これはコピーの構築ですが、コンパイラが代入の前にデフォルトのコンストラクタを呼び出す理由はわかりません。