c++11 でベクトルを定義する新しいショートカット方法について質問があります。次のクラスがあるとします
struct Tester{
vector< vector<int> > data;
Tester(){
data = vector< vector<int> >();
}
void add(vector<int> datum){
data.push_back(datum);
}
};
次に、以下は期待どおりに機能します。
int main(){
Tester test = Tester();
vector<int> datum = vector<int>{1,2,3};
test.add(datum);
}
しかし、これはしません:
int main(){
Tester test = Tester();
test.add(vector<int>{1,2,3});
}
誰かが私に違いを説明してもらえますか? 2 番目の main() で試みるショートカットを実行するにはどうすればよいですか?