为整数类型分配无限值是否具有未定义的行为?
作者:chqrlie 提问时间:10/29/2023
C 标准规定了有限浮点值在存储为整数类型时如何转换它们,但它似乎没有指定非有限值的行为: 6.3.1.4 实浮点数和整数 1 当标准浮点型的有限值转换为 以外的整数类型时,小数部分将被丢弃(即,该...
行为 问答列表
作者:chqrlie 提问时间:10/29/2023
C 标准规定了有限浮点值在存储为整数类型时如何转换它们,但它似乎没有指定非有限值的行为: 6.3.1.4 实浮点数和整数 1 当标准浮点型的有限值转换为 以外的整数类型时,小数部分将被丢弃(即,该...
作者:josh chatham 提问时间:11/17/2023
所以,我知道不使多态类析构函数虚拟会导致未定义的行为,而正确的解决方法是使它们成为虚拟的。话虽如此,为什么shared_ptr在破坏时“拯救”你?(我在 RHEL 8 上使用 gcc/g++) cl...
作者:user16217248 提问时间:11/16/2023
在 C 中,如果一定数量的尾随位为零,则指针与某个指针对齐。这需要提取指针的位,尽管只是有限数量的尾随位。显而易见的方法是强制转换指向位掩码的指针并使用位掩码:uintptr_t void *my_...
作者:Juliean 提问时间:11/5/2021
在编译启用代码优化(准确地说是 MSVC)时,我遇到了多个问题。实际情况是大型代码库的一部分,需要复杂的设置才能复制,但本质上可以归结为以下结构: struct VariableView { co...
作者:yesraaj 提问时间:12/15/2008
很难说这里问的是什么。这个问题含糊不清、含糊不清、不完整、过于宽泛或修辞,无法以目前的形式合理回答。如需帮助澄清此问题以便重新打开该问题,请访问帮助中心。 10年前关闭。 已锁定。这个问题及其答案被锁...
作者:AMA 提问时间:2/8/2018
一些背景: 扩展是未定义行为 (UB),除非它是模板专业化 [1]:namespace std 向其添加声明或定义是未定义的行为 命名空间 std 或嵌套在 std 中的任何命名空间,有几个 例外...
作者:L. F. 提问时间:4/15/2019
请考虑以下代码: #include <cctype> #include <functional> #include <iostream> int main() { std::invoke(std...
作者:KeyC0de 提问时间:9/2/2019
我有下面的简单程序: #include <iostream> class Counter { private: size_t m_count; public: Counter() : m_c...
作者:Luchian Grigore 提问时间:7/7/2012
我的印象是访问最后一个集合以外的成员是 UB,但我似乎找不到可靠的参考(除了声称它是 UB 但没有标准支持的任何答案)。union 那么,这是未定义的行为吗?...
作者:Safi Mustafa 提问时间:2/27/2018
我正在尝试在Xamarin中添加验证。为此,我将这篇文章用作参考点:使用数据注释进行验证。以下是我的行为。 public class EntryValidationBehavior : Behavi...