问题标签 [reinterpret-cast]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 对象的 reinterpret_cast
采用这个结构:
哪个更贵?
或者
我认为第二种情况更快,但我不确定,因为我不知道编译器将如何处理它。你能告诉我什么吗?
c++ - 从指针向量到 const 指针向量的重新解释是否安全?
这种转换类型安全吗
在这种情况下,静态转换显然不起作用,因为模板参数正在改变。但是通过重新解释演员表,我只是将 constness 添加到本质上相同的类型中。那么这对于所有实际目的来说应该是安全的吗?
c++ - 地址、reinterpret_cast 和多重继承
任何人都可以解释以下代码的行为吗?
- 为什么我们
b = 3
在第一种情况下,即是真b2 == &d
的? - 为什么在案例 2 中可以?
b2
和的地址我已经打印出来了d
,它们是不同的。
c++ - 二进制读取、reinterpret_cast 和字节序
我目前正在处理与字节序相关的问题。
假设我在大端系统中有一个大端文件。
此文件中的第一个值2882400152 = 0xABCDEF98
是整数 4。
要读取整数 4 中的值_myint4
,我只需执行以下操作:
问题是:读取文件中的整数 4 值,整数 8 等价于_myint8
什么?
- 对于大端文件和系统?
- 对于小端文件和系统?
我的第一个猜测是这样的:
但我完全不确定。这样做的好方法是什么?
重要提示:我不能使用临时整数 4 值,我需要直接读取 4 中的整数 4 _myint8
。
c++ - 如何检查迭代器是否形成连续的内存区域?
我目前有以下函数来读取原始数据的数组或向量(_readStream
是 a std::ifstream
):
第一个问题:这个功能对你来说还可以吗?
当我们直接读取一块内存时,它只有在内存块 from first
tolast
在内存中是连续的情况下才会起作用。如何检查?
objective-c - 我们如何将 double 或 float 重新解释为 NSUInteger 以创建哈希?
这是我的 isEqual 和哈希自定义运算符
那个做这项工作。但是,假设我想将距离和 startfrom 合并到哈希中。
我想我会简单地添加:
这是一个错误,因为它不兼容。
那么我应该怎么做呢?
c++ - std::copy_n 和 reinterpret_cast
out
如果我不使用,为什么结果会有所不同reinterpret_cast
?
c++ - reinterpret_cast 和 c-style cast 是否兼容(按 C++ 标准)?
C++ 标准提到这reinterpret_cast
是实现定义的,并且不提供任何保证,除了将(使用reinterpret_cast
)转换回原始类型将导致原始值传递给 first。
至少某些类型的 C 风格转换的行为方式大致相同 - 以相同的值来回转换结果 - 目前我正在使用枚举和int
s,但还有一些其他示例。
虽然 C++ 标准为两种类型转换提供了这些定义,但它是否也为混合类型转换提供了相同的保证?如果库 X 从函数返回int Y()
某个值,可以使用上述任何一种转换,而不必担心在 Y 的主体enum
中使用什么转换将初始转换enum
为?int
我没有 X 的源代码,所以我无法检查(无论如何它可能会随着下一个版本而改变),并且在文档中几乎没有提到类似的事情。
我知道在这种情况下的大多数实现下,两种强制转换的行为都是一样的;我的问题是:C++ 标准对这种情况有什么看法——如果有的话。
c++ - c++,reinterpret_cast 结构* 到 unsigned char*
起初我很抱歉我的英语:) 所以,我有一个结构和变量
我需要向某个函数发送无符号字符指针参数。我尝试使用reinterpret_cast
将指针PACKET
类型转换为unsigned char*
.
但后来我尝试了
我什么都没看到。为什么?以及如何正确投射?