cpp11 std::tie函数
时间: 2023-05-31 09:03:29 浏览: 122
a toor of c++ 11 std.
4星 · 用户满意度95%
std::tie函数是一个模板函数,用于将多个变量绑定到一个tuple中。它的原型如下:
```cpp
template< class... Types >
tuple<Types&...> tie( Types&... args );
```
使用std::tie函数可以将多个变量绑定到一个tuple中,并且可以用std::get函数从tuple中获取每个变量的值。这在函数返回多个值时非常有用。
例如,假设我们有一个函数,它返回两个值:
```cpp
std::tuple<int, double> func() {
return std::make_tuple(42, 3.14);
}
```
我们可以使用std::tie函数将这两个值绑定到两个变量中:
```cpp
int i;
double d;
std::tie(i, d) = func();
```
这样,i和d就分别被赋值为42和3.14了。
std::tie函数还可以用于忽略某个返回值。例如,如果只需要获取第一个返回值,可以这样写:
```cpp
int i;
std::tie(i, std::ignore) = func();
```
这样,std::ignore表示忽略第二个返回值,只将第一个返回值赋值给i。
阅读全文