3,881
社区成员
发帖
与我相关
我的任务
分享template <typename T,int LENGTH>
class grid{
public:
grid():size(0),mcells({0}){};
private:
T mcells[LENGTH];
int size;
}
[/quote]
T 的布局可能不是标准布局(比如std::string)[/quote]
+1,求解释标准布局,我也没弄清楚没什么memset不行。[/quote]
给你一个例子吧,自己捂一捂。
[/quote]
T 的布局可能不是标准布局(比如std::string)[/quote]
+1,求解释标准布局,我也没弄清楚没什么memset不行。
#include <array>
template <typename T,int LENGTH>
class grid{
public:
grid():size(0))
{
mcells.fill(T());
}
private:
std::array<T, LENGTH> mcells;
int size;
}
[/quote]
T 的布局可能不是标准布局(比如std::string)
grid():size(0){ memset(&mcells, 0, sizeof(mcells);}