[ Web Proxy ]
URL:
Viewing: https://ru.cppreference.com/cpp/utility/tuple/forward_as_tuple [Back]  [Original]

std::forward_as_tuple cppreference.com
cppreference.com

std::forward_as_tuple

cppreference.com
 
C++
(C++20)
(C++20)
(C++11)
(C++20)
/
(C++11)
(C++11)
(C++11)
(C++17)
 
 
 
<tbody> </tbody>
template< class... Types > tuple<Types&&...> forward_as_tuple( Types&&... args ) noexcept;
( C++11)
(constexpr since C++14)

args, . rvalue, rvalue , lvalue.

args

std::tuple, std::tuple<Types&&...>(std::forward<Types>(args)...)

, forward_as_tuple ; .

#include <iostream>
#include <map>
#include <tuple>
#include <string>

int main()
{
    std::map<int, std::string> m;

    m.emplace(std::piecewise_construct,
              std::forward_as_tuple(10),
              std::forward_as_tuple(20, 'a'));
    std::cout << "m[10] = " << m[10] << '\n';

    //   : 
    // std::tuple<int&&, char&&>    .
    //
    // auto t = std::forward_as_tuple(20, 'a');
    // m.emplace(std::piecewise_construct, std::forward_as_tuple(10), t);
}

:

m[10] = aaaaaaaaaaaaaaaaaaaa

tuple ,
( ) []
tuple
( ) []
(C++11)
tuple,
( ) []
(C++17)

( ) []

Web Proxy Viewer  |  New URL  |  Original Page