You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

询问C++中assert(not <condition>)语法是否被标准收录

关于assert(not <condition>)的C++标准依据

not是C标准中定义的逻辑非运算符的替代关键字,它和!完全等价,这一点在C标准里有明确规定:

  • C从C98开始就引入了这类替代关键字(包括not、and、or等),目的是适配不支持符号的编程环境,或是提升代码可读性。
  • 这些替代关键字属于C++标准语法范畴,所有符合标准的编译器都必须支持它们。
  • 因此assert(not std::is_sorted(...))和assert(!std::is_sorted(...))语义完全一致,都是合法的标准C++代码。

注:现代主流编译器默认就支持这类替代关键字,无需额外启用编译选项。

内容的提问来源于stack exchange,提问作者Vinod

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 12:42:01