开发者社区 问答 正文

使用数组向量的正确方法

有人可以告诉我使用向量数组的正确方法是什么?

我声明了数组(vector<float[4]>)的向量,但是error: conversion from 'int' to non-scalar type 'float [4]' requested在尝试时得到resize了。怎么了? 问题来源于stack overflow

展开
收起
保持可爱mmm 2020-02-09 14:06:46 496 分享 版权
1 条回答
写回答
取消 提交回答
  • 您不能将阵列存储在vector或任何其他容器中。要存储在容器中的元素的类型(称为容器的值类型)必须是可复制构造的和可分配的。数组都不是。

    但是,您可以使用array类模板,例如Boost,TR1和C ++ 0x提供的模板:

    std::vector<std::array<double, 4> > (您将需要替换std::array为std::tr1::array以使用C ++ TR1中包含的模板,或者boost::array使用Boost库中的模板。或者,您可以编写自己的模板;这非常简单。)

    2020-02-09 14:06:54
    赞同 展开评论
问答地址: