string
とint
を保持できるvector
を作ろうとしています。2種類の和集合を使用する方法
私は以下のコードを試してみたが、私は間違って何をやっている
error: use of deleted function 'my_union::~my_union()'
コンパイルエラーを取得しますか?
#include <iostream>
#include <vector>
using namespace std;
union my_union
{
string str;
int a;
};
int main()
{
vector<my_union> v;
my_union u; // error: use of deleted function 'my_union::~my_union()'
u.str = "foo";
v.push_back(u);
return 0;
}
Reopened:C++ 11では、ユニオンで許可されているものが大幅に拡張され、他にも 'std :: string'などが許可されました。 –
@PeteBecker私はそれを取得しますが、[this]でカバーされていません(http://stackoverflow.com/a/3521998/4342498)Qから答え? – NathanOliver
どのようにして、後でベクターから読み込む組合のメンバーを「知る」ことを計画していますか? –