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

std::piecewise_construct_t cppreference.com
cppreference.com

std::piecewise_construct_t

cppreference.com
 
C++
(C++20)
(C++20)
(C++11)
(C++20)
/
(C++11)
(C++11)
(C++11)
(C++17)
 
 
 
<tbody> </tbody> <tbody class="t-dcl-rev "> </tbody><tbody> </tbody>
struct piecewise_construct_t { explicit piecewise_construct_t() = default; };
( C++11)
constexpr std::piecewise_construct_t piecewise_construct{};
( C++11)
( C++17)
inline constexpr std::piecewise_construct_t piecewise_construct{};
( C++17)

std::piecewise_construct_t , , . std::piecewise_construct .

, std::piecewise_construct_t, , . , std::piecewise_construct_t, , , .

#include <iostream>
#include <utility>
#include <tuple>

struct Foo {
    Foo(std::tuple<int, float>) 
    {
        std::cout << " Foo  tuple\n";
    }
    Foo(int, float) 
    {
        std::cout << " Foo  int  float\n";
    }
};

int main()
{
    std::tuple<int, float> t(1, 3.14);
    std::pair<Foo, Foo> p1(t, t);
    std::pair<Foo, Foo> p2(std::piecewise_construct, t, t);
}

:

 Foo  tuple
 Foo  tuple
 Foo  int  float
 Foo  int  float

C++:

LWG 2510 C++11 ,

pair
(public - std::pair)

Web Proxy Viewer  |  New URL  |  Original Page