C++11: tuple

来源:互联网 发布:对云计算的看法 编辑:程序博客网 时间:2024/06/14 07:40
#include <tuple>#include <iostream>#include <string>int main(){        auto item = std::make_tuple("0-999-78345-X", 3, 20.00, 0.0);        auto book = std::get<0>(item);        typedef decltype(item) trans;        size_t sz = std::tuple_size<trans>::value;        std::tuple_element<1, trans>::type cnt = std::get<1>(item);        std::cout << sz << std::endl; // 4        std::cout << cnt << std::endl; // 3        std::tuple<std::string, std::string, std::string> duo("1", "2", "3");        std::tuple<std::size_t, std::size_t, std::size_t> threeD(1, 2, 3);         // bool b = (duo == threeD); // error: can't compare a size_t and a string        std::tuple<std::size_t, std::size_t, std::size_t> origin(2, 0, 0);         bool b2 = (origin < threeD); // ok: b2 is false        std::cout << b2 << std::endl;        return 0;}
// from C++ Primer 5th(p.720)// g++ xx.cpp -std=c++11// gcc 4.9.2
0 0