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
処理系
- Clang: ??
- GCC: 16 (
-freflectionオプション指定) ✅ - Visual C++: ??