蟒蛇来C++代码

Python to C++ code

本文关键字:代码 C++      更新时间:2023-10-16

Python Code:

import numpy as np
from numpy import *
bits=np.array([ 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0])
print(bits)
N_bits=len(bits)
print(N_bits)
N_S=(N_bits/4)+1

delta1=zeros(((N_bits/4)+1,) , dtype=np.complex)
delta2=zeros(((N_bits/4)+1,) , dtype=np.complex)
k=1
C=zeros(((N_bits/4)+1,) , dtype=np.complex)
D=zeros(((N_bits/4)+1,) , dtype=np.complex)
C[0]=2+2j
D[0]=1+1j

请告诉我什么是等效C++代码

您可以使用 std::vector 来表示数组。

#include <vector>
#include <complex>
int numElements = 42;
std::vector<std::complex<double> > x(numElements, 0);
double realPart = 23;
double imgPart = 0;
x.at(0) = std::complex<double>(realPart, imgPart);

你可以做这样的事情。

#include <complex>
#include <vector>
#include <iostream>
using namespace std;
int main()
{
    int nbits=16;
    vector<complex<float> > arr;
    for(int i=0; i<nbits; i++ )
    {
    arr.push_back(complex<float>(0,0) );
    }
    arr.at(3).real()=5.2;
    arr.at(3).imag()=6.3;
    cout << arr[3] << endl;
    return 0;
}

arr.push_back(complex<float>(0,0) );

是将每个元素初始化为零并构建数组 arr.at(3).real()=5.2; arr.at(3).imag()=6.3;是为数组的元素赋值或更好的

arr.at(5)=complex<float> (1,-2);

以获得相同的结果。最后:

cout << arr[3] << endl;

打印数组的元素