「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; } 行数的には