namespace std::meta {
consteval info current_class();
}
概要
current_class()を呼び出した時点で直接囲んでいるクラス(またはメンバ関数の所属するクラス)のリフレクションを返す。
戻り値
呼び出し位置を囲んでいるクラスのリフレクションを返す。メンバ関数内から呼ばれた場合は、そのメンバ関数が所属するクラスのリフレクションを返す。
例外
クラス(またはメンバ関数)の文脈で呼ばれていない場合、std::meta::exception例外を送出する。
例
#include <meta>
#include <print>
class MyClass {
public:
static void info() {
constexpr auto cls = std::meta::current_class();
std::println("クラス名: {}", std::meta::identifier_of(cls));
}
};
int main() {
MyClass::info();
}
出力例
クラス名: MyClass
バージョン
言語
- C++26
処理系
- Clang: ??
- GCC: 16 (
-freflectionオプション指定) ✅ - Visual C++: ??