std::experimental::optional<T>:: emplace
From cppreference.net
<
cpp
|
experimental
|
optional
|
template
<
class
...
Args
>
void emplace ( Args && ... args ) ; |
(라이브러리 fundamentals TS) | |
|
template
<
class
U,
class
...
Args
>
void emplace ( std:: initializer_list < U > ilist, Args && ... args ) ; |
(라이브러리 fundamentals TS) | |
포함된 값을 제자리에서 생성합니다. 호출 전에 * this 가 이미 값을 포함하고 있는 경우, 포함된 값은 해당 소멸자를 호출하여 파괴됩니다.
2)
포함된 값을
ilist,
std::
forward
<
Args
>
(
args
)
...
를 매개변수로 하여 해당 생성자를 호출하여 초기화합니다. 이 오버로드는
std::
is_constructible
<
T,
std::
initializer_list
<
U
>
&
, Args
&&
...
>
::
value
가
true
인 경우에만 오버로드 해결에 참여합니다.
목차 |
매개변수
| args... | - | 생성자에 전달할 인수들 |
| ilist | - | 생성자에 전달할 초기화 리스트 |
| 타입 요구사항 | ||
-
T
는
Args...
로부터 생성 가능해야 함
|
||
-
T
는
std::initializer_list
와
Args...
로부터 생성 가능해야 함
|
||
반환값
(없음)
예외
T
의 선택된 생성자에 의해 발생하는 모든 예외. 예외가 발생하면,
*
this
는 이 호출 이후 값을 포함하지 않습니다(이전에 포함된 값이 있었다면 파괴되었습니다).
참고 항목
|
내용을 할당
(public member function) |