「pairからパターンマッチで抜き出す」が正しい表現だと思いますが、
私のコードの意図としてはタイトルのとおりです。
boost::tieはこんなケースでよく使います。
#include <utility> int main() { std::pair<int, int> mat; // first/secondという名前を使いたくないのでx/yという変数にそれぞれ代入する int x = mat.first; int y = mat.second; }
↓ boost::tieを使う
#include <boost/tuple/tuple.hpp> int main() { std::pair<int, int> mat; // first/secondという名前を使いたくないのでx/yという名前を付ける int x, y; boost::tie(x, y) = mat; }
行数的には変わってないですが、pairから要素を抜き出すときにfirst/secondが出てこないので
boost::tieを好んで使っています。
# pair使わずにクラス作れよって言われたらそれまでですが…。