【发布时间】:2018-06-17 18:51:04
【问题描述】:
请考虑以下类型:
struct Part
{
float data;
};
struct Wrap
{
Wrap( const Part& p )
:data( p.data )
{}
float data;
};
现在我想使用std::array<Part, N> 来初始化std::array<Wrap, N>。
int main()
{
std::array<Part, 3> parts{ Part{ 1.0f }, Part{ 2.0f }, Part{ 3.0f } };
std::array<Wrap, 3> wrappers( parts );
return 0;
}
(这会引发错误"conversion from 'std::array<Part, 3>' to non-scalar type 'std::array<Wrap, 3>' requested")
如何使用T 类型的std::array 来初始化可从T 构造的类型的std::array?
【问题讨论】: