YSC*_*YSC 6 c++ c++-concepts c++20
如何从概念和类型中获取布尔类型的核心常量表达式?
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
Run Code Online (Sandbox Code Playgroud)
我开始研究概念,我想根据概念检查类型(更精确地说:从概念定义特征)。怎么做?
Jar*_*d42 15
您可以使用:
static_assert(Valid<ValidExample>); // ValidExample is Valid
static_assert(!Valid<InValidExample>); // InValidExample is not Valid
Run Code Online (Sandbox Code Playgroud)
作为模板变量(类型bool)。
| 归档时间: |
|
| 查看次数: |
159 次 |
| 最近记录: |