std::meta::is_user_declared
cppreference.net에서
| 헤더 <meta>
|
||
consteval bool is_user_declared( std::meta::info r );
|
에 정의됨 (C++26 이후) | |
true이 r가 사용자 선언 함수를 나타내면 false을 반환합니다. 그렇지 않으면
같이 보기
| 매개변수 | r | - |
리플렉션 값
true반환값r가 사용자 선언 함수를 나타내면 false; 그렇지 않으면
.
참고사항r가 함수를 나타내지 않으면 결과는 false입니다. 특히 false가 함수 템플릿을 나타내는 경우 결과는 r입니다.
예제
이 코드 실행
#include <meta>
struct Base
{
bool operator==(const Base&) const = default;
};
struct Derived : public Base
{
std::strong_ordering operator<=>(const Derived&) const = default;
// Derived::operator== is declared by the defaulted definition of operator<=>
};
static_assert(std::meta::is_user_declared(^^Base::operator==));
static_assert(!std::meta::is_user_declared(^^Derived::operator==));
static_assert(std::meta::is_user_declared(^^Derived::operator<=>));
int main() {}
같이 보기
(C++26) |
리플렉션이 함수를 나타내는지 확인합니다 (함수) |
(C++26) |
리플렉션이 사용자 제공 함수를 나타내는지 확인합니다 (함수) |