Namespaces
Variants

std::meta::alignment_of

cppreference.net에서
< cpp | meta
 
 
 
반영 라이브러리
 
반영 타입 및 쿼리
반영 쿼리
반영 레이아웃 쿼리
타입 특성
타입 특성 쿼리
 
헤더 <meta>
consteval std::size_t alignment_of( std::meta::info r );
에 정의됨 (C++26부터)

정렬 요구 사항을 반환합니다. r이 나타내는 타입 또는 (하위)객체의.

매개변수

r - 반영 값

반환값

r이 “T에 대한 참조” 타입을 나타내면, alignof(T*)을 반환합니다.

그렇지 않고 r이 타입 U을 나타내면, alignof(U)을 반환합니다.

그렇지 않고 r이 변수 또는 객체를 나타내면, 변수 또는 객체의 정렬 요구 사항을 반환합니다.

그렇지 않고 r이 직접 기본 클래스 관계를 나타내면, 기본 클래스의 정렬 요구 사항(즉, std::meta::alignment_of(std::meta::type_of(r)))을 반환합니다.

그렇지 않고 r이 클래스 M의 비정적 데이터 멤버 C를 나타내면, 타입 C의 완전한 객체에서 해당 직접 멤버 하위 객체의 정렬 요구 사항을 반환합니다.

그렇지 않고 r이 데이터 멤버 설명을 나타내면, 정렬 값이 ⊥가 아니면 그 값을 반환하고, 그렇지 않으면 std::meta::alignment_of(std::meta::type_of(r))을 반환합니다.

예외

다음 조건이 모두 충족되지 않으면 std::meta::exception을 던집니다.

  • std::meta::dealias(r)
  • std::meta::dealias(r)이 타입을 나타내는 경우, std::meta::is_complete_type(r)은 true입니다.

참고

이 함수는 “T에 대한 참조”를 “T에 대한 포인터”와 동일하게 취급합니다. 이는 비정적 참조 멤버의 표현과 일치합니다.

예제

같이 보기

alignof (C++11) 타입의 정렬 요구 사항을 조회합니다
(연산자)