gpt4 book ai didi

c++ - 如何将未显式字符串文字错误消息传递给 static_assert?

转载 作者:搜寻专家 更新时间:2023-10-30 23:51:10 24 4
gpt4 key购买 nike

我在代码的不同地方有一些静态断言。

static_assert(bool_constexpr_1, error_message);
...
static_assert(bool_constexpr_2, error_message);

并希望他们所有人共享相同的error_message

第一个解决方案是复制粘贴消息。

第二个是#define error_message

还有更好的吗?

附言我希望 static constexpr auto 可以工作,但它失败了。

最佳答案

您要么必须复制粘贴文字,要么使用预处理器。每[dcl.dcl]/1 static_assert的语法定义为

static_assert-declaration:
static_­assert ( constant-expression ) ;
static_­assert ( constant-expression , string-literal ) ;

因此,您要么提供字符串文字,要么不提供。没有其他方法可以使用它。

关于c++ - 如何将未显式字符串文字错误消息传递给 static_assert?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57501016/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com