#include <utility> // std::pair, std::make_pair
#include <string> // std::string
#include <iostream> // std::cout
int main () {
std::pair <std::string,double> product1; // default constructor
std::pair <std::string,double> product2 ("tomatoes",2.30); // value init
std::pair <std::string,double> product3 (product2); // copy constructor
product1 = std::make_pair(std::string("lightbulbs"),0.99); // using make_pair (move)
product2.first = "shoes"; // the type of first is string
product2.second = 39.90; // the type of second is double
std::cout << "The price of " << product1.first << " is $" << product1.second << '\n';
std::cout << "The price of " << product2.first << " is $" << product2.second << '\n';
std::cout << "The price of " << product3.first << " is $" << product3.second << '\n';
return 0;
}
I2luY2x1ZGUgPHV0aWxpdHk+ICAgICAgLy8gc3RkOjpwYWlyLCBzdGQ6Om1ha2VfcGFpcgojaW5jbHVkZSA8c3RyaW5nPiAgICAgICAvLyBzdGQ6OnN0cmluZwojaW5jbHVkZSA8aW9zdHJlYW0+ICAgICAvLyBzdGQ6OmNvdXQKCmludCBtYWluICgpIHsKICBzdGQ6OnBhaXIgPHN0ZDo6c3RyaW5nLGRvdWJsZT4gcHJvZHVjdDE7ICAgICAgICAgICAgICAgICAgICAgLy8gZGVmYXVsdCBjb25zdHJ1Y3RvcgogIHN0ZDo6cGFpciA8c3RkOjpzdHJpbmcsZG91YmxlPiBwcm9kdWN0MiAoInRvbWF0b2VzIiwyLjMwKTsgICAvLyB2YWx1ZSBpbml0CiAgc3RkOjpwYWlyIDxzdGQ6OnN0cmluZyxkb3VibGU+IHByb2R1Y3QzIChwcm9kdWN0Mik7ICAgICAgICAgIC8vIGNvcHkgY29uc3RydWN0b3IKCiAgcHJvZHVjdDEgPSBzdGQ6Om1ha2VfcGFpcihzdGQ6OnN0cmluZygibGlnaHRidWxicyIpLDAuOTkpOyAgIC8vIHVzaW5nIG1ha2VfcGFpciAobW92ZSkKCiAgcHJvZHVjdDIuZmlyc3QgPSAic2hvZXMiOyAgICAgICAgICAgICAgICAgIC8vIHRoZSB0eXBlIG9mIGZpcnN0IGlzIHN0cmluZwogIHByb2R1Y3QyLnNlY29uZCA9IDM5LjkwOyAgICAgICAgICAgICAgICAgICAvLyB0aGUgdHlwZSBvZiBzZWNvbmQgaXMgZG91YmxlCgogIHN0ZDo6Y291dCA8PCAiVGhlIHByaWNlIG9mICIgPDwgcHJvZHVjdDEuZmlyc3QgPDwgIiBpcyAkIiA8PCBwcm9kdWN0MS5zZWNvbmQgPDwgJ1xuJzsKICBzdGQ6OmNvdXQgPDwgIlRoZSBwcmljZSBvZiAiIDw8IHByb2R1Y3QyLmZpcnN0IDw8ICIgaXMgJCIgPDwgcHJvZHVjdDIuc2Vjb25kIDw8ICdcbic7CiAgc3RkOjpjb3V0IDw8ICJUaGUgcHJpY2Ugb2YgIiA8PCBwcm9kdWN0My5maXJzdCA8PCAiIGlzICQiIDw8IHByb2R1Y3QzLnNlY29uZCA8PCAnXG4nOwogIHJldHVybiAwOwp9