函式模板
<tuple>

std::tie

template<class... Types>  tuple<Types&...> tie (Types&... args) noexcept;
template<class... Types>  constexpr tuple<Types&...> tie (Types&... args) noexcept;
將引數繫結到元組元素
構造一個 tuple 物件,其元素是 args 中引數的引用,順序與 args 相同。

這使得一組物件可以充當元組,這對於解包 tuple 物件尤其有用。

特殊常量 ignore 可用於指定要忽略的 tuple 的元素,而不是將它們繫結到特定物件。

引數

args
要作為 tuple 元素繫結的物件列表(左值)。

返回值

一個包含 args 的左值引用的 tuple

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// packing/unpacking tuples
#include <iostream>     // std::cout
#include <tuple>        // std::tuple, std::make_tuple, std::tie

int main ()
{
  int myint;
  char mychar;

  std::tuple<int,float,char> mytuple;

  mytuple = std::make_tuple (10, 2.6, 'a');          // packing values into tuple

  std::tie (myint, std::ignore, mychar) = mytuple;   // unpacking tuple into variables

  std::cout << "myint contains: " << myint << '\n';
  std::cout << "mychar contains: " << mychar << '\n';

  return 0;
}

輸出
myint contains: 10
mychar contains: a


資料競爭

此呼叫未引入任何內容。
請注意,返回的物件可能會修改引數。

異常安全

無異常保證:此函式從不丟擲異常。

另見