Reinterpret_cast 및 간단하게 기본 구성 가능한 객체 생성
reinterpret_cast를 사용하여 간단하게 기본 구성 가능한 객체를 생성할 수 있다고 주장하는 데 사용되는 cppreference 적절하게 정렬된 보관소에 보관하세요. 그러나 이후 이 주장은 객체를 공식적으로 도입하고 정의되지 않은 동작을 방지하기 위해 배치 신규가 필요하다는 내용으로 수정되었습니다.
객체 수명은 언제 시작됩니까?
이러한 수정을 통해 제공된 코드에 X 개체가 존재하지 않습니다는 것이 분명해졌습니다. 따라서 해당 멤버(예: reinterpret_cast
alignas()의 역할
alignas() 지정자는 저장소가 X를 보유하도록 적절하게 정렬되도록 보장합니다. X 객체를 생성하지 않습니다. alignas() 선언과 reinterpret_cast 사이에 분기가 있어도 X 객체가 존재하지 않는다는 사실은 바뀌지 않습니다.
C 표준의 변경
이 동작에 대한 해석은 일관적으로 유지되었습니다. C 11 및 C 1z. reinterpret_cast를 통해 명시적인 구성 없이 객체를 생성하는 개념은 두 표준 모두에서 지원되지 않습니다.
위 내용은 간단하게 기본 생성 가능한 개체를 만들기 위해 언제 Placement-New를 `reinterpret_cast`와 함께 사용해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!