簡體   English   中英

根據類型檢查概念

[英]Check a concept against a type

如何從概念和類型中獲取bool類型的核心常量表達式?

template<class T>
concept Valid = requires(T t) {
    { t.x };
};

struct ValidExample   { int x; };
struct InValidExample {};

static_assert(?); // ValidExample is Valid
static_assert(?); // InValidExample is not Valid

我開始玩概念,我想根據一個概念檢查一個類型(更准確地說:從概念中定義一個特征)。 怎么辦?

您可以使用:

static_assert(Valid<ValidExample>); // ValidExample is Valid
static_assert(!Valid<InValidExample>); // InValidExample is not Valid

作為模板變量( bool類型)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM