std::meta::is_explicit
cppreference.net에서
| 헤더에 정의됨 <meta>
|
||
consteval bool is_explicit( std::meta::info r );
|
(C++26부터) | |
반환 true 만약 r이(가) explicit 생성자 또는 변환 함수를 나타내면, 그렇지 않으면 false.
매개변수
| r | - | 리플렉션 값 |
반환값
true 만약 r이(가) 명시적(explicit)으로 선언된 멤버 함수를 나타내면, 그렇지 않으면 false.
참고
만약 r이(가) 함수를 나타내지 않으면, 결과는 false입니다. 특히, 결과는 false 만약 r이(가) 함수 템플릿을 나타내면입니다.
예제
이 코드 실행
#include <meta>
struct A {
explicit operator bool() const;
template<class T>
explicit(^^T == ^^void) operator T*() const;
};
static_assert(std::meta::is_explicit(^^A::operator bool));
static_assert(std::meta::is_explicit(^^A::operator void*));
static_assert(!std::meta::is_explicit(^^A::operator int*));
같이 보기
(C++26) |
리플렉션이 함수를 나타내는지 확인합니다 (함수) |