January 2018
Intermediate to advanced
374 pages
9h 53m
English
Prior to C++17, there were two standard ways of accessing elements of a std::tuple:
Although they both worked, the syntax was for performing such a simple task was very verbose, as shown in the following example:
// Prerequisite
auto make_bond() { return std::make_tuple(std::string{"James"}, 7, true) }
// Using std::get<N>
auto tpl = make_bond();
auto name = std::get<0>(tpl);
auto id = std::get<1>(tpl);
auto kill_license = std::get<2>(tpl);
std::cout << name << ", " << id << ", " << kill_license << '\n';
// Output: James, 7, true
// Using std::tie
auto name = ...