gpt4 book ai didi

c++ - 我可以 memcpy() 任何具有普通析构函数的类型吗?

转载 作者:可可西里 更新时间:2023-11-01 15:34:20 26 4
gpt4 key购买 nike

确实意识到 is_pod 是一个类型可以 memcpy 的充分条件,但是 has_trivial_destructor 足以达到这个目的?如果不是,为什么?

最佳答案

没有。要求是该类型可简单复制 (§3.9/2),它具有 a few more requirements ,比如缺少一个重要的复制构造函数(§9/6)。

A trivially copyable class is a class that:

— has no non-trivial copy constructors (12.8),

— has no non-trivial move constructors (12.8),

— has no non-trivial copy assignment operators (13.5.3, 12.8),

— has no non-trivial move assignment operators (13.5.3, 12.8), and

— has a trivial destructor (12.4).

因此您应该改用 is_trivially_copyable

关于c++ - 我可以 memcpy() 任何具有普通析构函数的类型吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11979153/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com