【发布时间】:2018-12-02 15:11:31
【问题描述】:
std::array 是否有等效的 memset?我认为memset 在将数组初始化为零时应该比在数组上循环时执行得更好。我搜索了一个std::array,但在网上找不到任何东西。
【问题讨论】:
-
关键是你找不到
memset,因为它不适用于任何非POD类型的T。这不仅适用于std::array<T, n>,而且适用于任何基于通用T类型的容器。 -
@PaulMcKenzie 虽然可以有条件地启用基于
std::is_pod<T>::value的memset方法……(我应该指出is_pod计划在C++20 中弃用。)