Skip to content

Latest commit

 

History

History
53 lines (39 loc) · 1.12 KB

File metadata and controls

53 lines (39 loc) · 1.12 KB

has_external_linkage

  • meta[meta header]
  • std::meta[meta namespace]
  • function[meta id-type]
  • cpp26[meta cpp]
namespace std::meta {
  consteval bool has_external_linkage(info r);
}
  • info[link info.md]

概要

外部リンケージを持つかを判定する。

戻り値

rが外部リンケージを持つエンティティを表す場合にtrueを返す。

#include <meta>

int global_var;                  // 外部リンケージ
static int internal_var;         // 内部リンケージ
namespace { int anon_var; }      // 内部リンケージ

int main() {
  static_assert(std::meta::has_external_linkage(^^global_var));
  static_assert(!std::meta::has_external_linkage(^^internal_var));
  static_assert(!std::meta::has_external_linkage(^^anon_var));
}

出力

バージョン

言語

  • C++26

処理系

参照