|
|
1
5
因为标准是这么说的。不是明确的,但
22.5.3.6#1
说关于
该标准没有定义在不满足前提条件的情况下调用函数时会发生什么。它是未定义的。
事实上,这已经可以得出答案了。该标准并没有试图定义所有的东西。相反,它指定了一个方法在用于它应该用于的目的时要做什么。使命感
我想可以编写一个调用没有问题的实现
|
|
|
2
4
定义一个表达式的特征就是它的结果,由它的值类型和值组织法来描述。语言要求任何表达式都应具有有效的结果(包括
这就是的全部意义
|
|
3
2
大多数C++标准库实现都有可以启用的可选断言。如果启用这些,
如果您更改标准以删除此UB,则拥有此断言将成为非法行为。 |