我有两个 vector 的浮点数,我希望它们成为复数的一个 vector 。我被卡住了。我不介意使用迭代器,但是我确信它将重新发现我不知道的轮子。我的代码是否将我引向正确的方向?

typedef std::vector<float> CVFloat;
CVFloat vA, vB;
//fil vectors
typedef std::complex<CVFloat> myComplexVector;
myComplexVector* vA_Complex = new myComplexVector(vA, vB);

上面的代码正确通过了编译器,但是当我想使用迭代器从myComplexVector获取单个数字时,出现错误“Undefined symbol'const_iterator'”(Borland C++)
myComplexVector::const_iterator it = vA_Complex->begin();

最佳答案

在这里,您将创建一个“复杂”对象,其实部和虚部都是浮点数的 vector 。
也许您实际上想要做的是创建一个复杂对象的 vector ,这些对象的实部和虚部都是浮点数?

编辑:myComplexVector不是 vector ,是复杂的。这就是为什么未定义const_iterator的原因。

10-07 16:01