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

履歴 編集

function
<meta>

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

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

概要

関数パラメータがデフォルト引数を持つかを判定する。

戻り値

rが関数パラメータを表し、そのパラメータが到達可能な宣言のいずれかでデフォルト引数を持つ場合にtrueを返す。そうでなければfalseを返す。

#include <meta>

void func(int x, int y = 10);

int main() {
  static_assert(!std::meta::has_default_argument(
    std::meta::parameters_of(^^func)[0]));  // x
  static_assert(std::meta::has_default_argument(
    std::meta::parameters_of(^^func)[1]));   // y = 10
}

出力

バージョン

言語

  • C++26

処理系

参照