voidify
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
template
<
class
T
>
void * voidify ( T & obj ) noexcept ; |
(
설명 전용*
)
(C++17부터 constexpr) |
|
obj 의 주소를 반환합니다 ( void * 로 암시적으로 변환됨).
목차 |
매개변수
| obj | - | 주소가 취해질 객체 |
반환값
|
& obj |
(C++11 이전) |
|
std:: addressof ( obj ) |
(C++11 이후) |
참고 사항
이 설명 전용 함수는 P0896R4 에 의해 도입되었습니다. 이 함수는 초기화되지 않은 메모리 영역에서 객체를 생성하는 uninitialized memory algorithms 의 효과를 설명하는 데 사용됩니다. 결과 포인터는 placement new expression 의 placement-params 로 사용됩니다.
초기에는 반환값이 const_cast < void * > ( static_cast < const volatile void * > ( std:: addressof ( obj ) ) ) 였는데, 이는 const-correctness를 위반합니다. LWG issue 3870 의 해결을 통해 명시적 캐스트들이 제거되었으며, 남은 유일한 변환은 void * 로의 암시적 변환뿐입니다.
결함 보고서
다음의 동작 변경 결함 보고서들은 이전에 발표된 C++ 표준에 소급 적용되었습니다.
| DR | 적용 대상 | 게시된 동작 | 올바른 동작 |
|---|---|---|---|
| LWG 3870 | C++98 | 명시적 캐스트가 const 정확성을 깨뜨렸음 | 해당 캐스트들을 제거함 |
참고 항목
|
객체 범위를 초기화되지 않은 메모리 영역에 복사합니다
(함수 템플릿) |
|
|
(C++20)
|
객체 범위를 초기화되지 않은 메모리 영역에 복사합니다
(알고리즘 함수 객체) |
|
객체를 범위로 정의된 초기화되지 않은 메모리 영역에 복사합니다
(함수 템플릿) |
|
|
(C++20)
|
객체를 범위로 정의된 초기화되지 않은 메모리 영역에 복사합니다
(알고리즘 함수 객체) |
|
(C++17)
|
객체 범위를 초기화되지 않은 메모리 영역으로 이동합니다
(함수 템플릿) |
|
(C++20)
|
객체 범위를 초기화되지 않은 메모리 영역으로 이동합니다
(알고리즘 함수 객체) |
|
(C++17)
|
범위로 정의된 초기화되지 않은 메모리 영역에서
기본 초기화
를 통해 객체를 생성합니다
(함수 템플릿) |
|
범위로 정의된 초기화되지 않은 메모리 영역에서
기본 초기화
를 통해 객체를 생성합니다
(알고리즘 함수 객체) |
|
|
(C++17)
|
범위로 정의된 초기화되지 않은 메모리 영역에서
값 초기화
를 통해 객체를 생성합니다
(함수 템플릿) |
|
범위로 정의된 초기화되지 않은 메모리 영역에서
값 초기화
를 통해 객체를 생성합니다
(알고리즘 함수 객체) |
|
|
(C++20)
|
주어진 주소에 객체를 생성합니다
(함수 템플릿) |
|
(C++20)
|
주어진 주소에 객체를 생성합니다
(알고리즘 함수 객체) |