将两个向量<double>转换为向量<complex<double>>

chi*_*n s 0 c++ visual-c++

我有两个 double 类型的向量,我想将它们组合起来形成一个复向量。

vector<double> vReal;
vector<double> vImag;
Run Code Online (Sandbox Code Playgroud)

我如何将以上两者结合起来得到

vector<complex<double>> vComp;
Run Code Online (Sandbox Code Playgroud)

有人可以帮我怎么做吗?

非常感谢。

此致

金丹

han*_*aad 5

    vComp.reserve(vReal.size());

    std::transform(
        begin(vReal), end(vReal), begin(vImag), 
        std::back_inserter(vComp), 
        [](double r, double i) { return std::complex<double>(r, i); });
Run Code Online (Sandbox Code Playgroud)