我只是认为它static_assert
被定义为static_assert-declaration
.
据我了解,声明应该引入名称、函数名称/对象名称或类型名称。static_assert
不适合这个。这并不直观。
那么为什么static_assert
定义为声明而不是postfix-expression
声明呢?
遵循标准的相关部分:
static_assert-declaration:
static_assert ( constant-expression , string-literal ) ;