У меня есть следующий код, который заполняет вектор, содержащий пару пар.
std::vector<std::pair<double, std::pair<int, int>>> vec;
int x=100, y=10, z=20;
vec.push_back(std::make_pair((double)x,std::make_pair(y,z)));
for(int i=0;i<vec.size();i++){
std::cout<<"x: "<<vec[i].first<<"\n";
std::cout<<"y: "<<vec[i].second.first<<"\n";
std::cout<<"z: "<<vec[i].second.second<<"\n";
}
Выход:
x: 0
y: 0
z: 0
Почему печать не выполняется следующим образом?
x: 100.0
y: 10
z: 20