最終更新日時(UTC):
が更新

履歴 編集

function
<meta>

std::meta::has_identifier(C++26)

namespace std::meta {
  consteval bool has_identifier(info r);
}

概要

リフレクションが識別子を持つかどうかを判定する。

戻り値

rが識別子を持つ場合はtrue、そうでなければfalseを返す。名前のない関数パラメータや、異なる宣言間でパラメータ名が一致しない場合はfalseとなる。

#include <meta>

void func(int x, int);

int main() {
  static_assert(std::meta::has_identifier(
    std::meta::parameters_of(^^func)[0]));   // "x"という名前がある
  static_assert(!std::meta::has_identifier(
    std::meta::parameters_of(^^func)[1]));  // 名前がない
}

出力

バージョン

言語

  • C++26

処理系

参照