传递参数数组错误

时间:2015-12-09 13:25:50

标签: c++

我试图在c ++中传递数组参数。 像这样的代码。

main()
{

...        
double *terms = new double[9];
GuassianTerms(9,1,terms);

<这里的术语没有正确的值>

...}


double Cmfc_test5Dlg::Guassian(int x, double sigma)
{
        double c = 2.0 * sigma * sigma;
        return exp(-x * x / c) / sqrt(c * 3.141592f);
}
double Cmfc_test5Dlg::GuassianTerms(int kernalSize, double sigma, double terms[])
{
        terms = new double[kernalSize];
        for (int i = 0; i < kernalSize; ++i) {
                terms[i] = Guassian(i - kernalSize / 2, sigma);
        }
        return 1;//*terms;
}

但是术语的价值观有些错误。

如何获得传递参数?

我该怎么做才能解决这个问题?

1 个答案:

答案 0 :(得分:1)

double Cmfc_test5Dlg::GuassianTerms(int kernalSize, double sigma, double* terms)
{
        for (int i = 0; i < kernalSize; ++i) {
                terms[i] = Guassian(i - kernalSize / 2, sigma);
        }
        return 1;//*terms;
}