std::meta::parameters_of
cppreference.net에서 발췌
|
헤더 <meta>
|
||
consteval std::vector<std::meta::info> parameters_of( std::meta::info r );
|
에 정의됨 (C++26 이후) | |
만약 r이 함수를 나타내면, 해당 함수 매개변수의 리플렉션을 포함하는 벡터를 반환합니다. 만약 r이 함수 타입을 나타내면, 해당 매개변수 타입의 리플렉션을 포함하는 벡터를 반환합니다.
두 경우 모두, 벡터의 요소는 매개변수가 나타나는 순서대로 정렬됩니다.
매개변수
| r | - | 함수 또는 함수 타입을 나타내는 리플렉션 |
반환값
리플렉션의 std::vector입니다.
예외
std::meta::exception을 던집니다. 단, r이 함수 또는 함수 타입을 나타내지 않는 경우에만 해당합니다.
참고 사항
함수 매개변수의 리플렉션은 매개변수의 타입, 식별자(있는 경우), 그리고 어노테이션 목록에 대해 질의할 수 있습니다. 함수 본문 내 매개변수 변수의 값을 얻으려면 std::meta::variable_of를 참조하십시오.
매개변수의 타입( std::meta::type_of 에 의해 반환된)은 cv-한정되지 않음이며, 이는 해당 변수의 타입과 다를 수 있습니다:
void f(const int x)
{
constexpr auto rp = std::meta::parameters_of(^^f)[0];
static_assert(std::meta::type_of(rp) == ^^int);
constexpr auto rv = std::meta::variable_of(rp);
static_assert(&[:rv:] == &x);
static_assert(std::meta::type_of(rv) == ^^const int);
}
예제
| 이 섹션은 불완전합니다 이유: 예제 없음 |
같이 보기
(C++26) |
함수 정의에서 리플렉션된 함수 매개변수의 변수를 얻습니다 (함수) |
(C++26) |
리플렉션된 함수의 반환 타입을 얻습니다 (함수) |