首页 > 解决方案 > 在 C++ 中允许使用 memset

问题描述

我试图弄清楚标准何时允许使用memset.

cppreference声称可以memset与普通可复制类型一起使用(模可能重叠的子对象——让我们忽略这些)。在阅读标准(特别是公开可用的 C++17 草案)时,我能找到的最接近的内容是关于memcpy— 实际上,有一个子句明确允许将可简单复制的对象的表示复制到 char 数组中并返回,但是就是这样。

事实上,看起来标准甚至没有定义memset关于它定义的 C++ 实体的语义。

那么,我允许哪些类型的对象,我允许他们memset使用的值的限制是什么memset以及如何证明这一点?

标签: c++language-lawyer

解决方案


推荐阅读