E
Edward Jensen
Hi,
I have the following static arrays of different size in a class:
in header:
static double w2[2], x2[2];
static double w3[3], x3[3];
static double w4[4], x4[4];
in GaussLegendre.cpp:
double GaussLegendre::w2[2] = {1.0, 1.0};
double GaussLegendre::x2[2] = {-0.577350269189625, 0.577350269189625};
double GaussLegendre::w3[3] = {0.555555555555556, 0.8888888888888889,
0.555555555555556};
double GaussLegendre::x3[3] = {-0.774596669241483, 0.0, 0.774596669241483};
double GaussLegendre::w4[4] = {0.347854845137453, 0.652145154862546,
0.652145154862546, 0.347854845137453};
double GaussLegendre::x4[4] = {-0.861136311594053, -0.339981043584856,
0.339981043584856, 0.861136311594053};
Now I want to create a static array of pointers of x2, x3, x4 and w2,w2,w4.
I thought I could do that with just
declaring statis double* x[3] in my header and the following in .cpp:
double* GaussLegendre::x[3] = {&GaussLegendre::x2, &GaussLegendre::x3,
&GaussLegendre::x4};
but I get the following error: cannot convert from 'double (*)[2]' to
'double *
Why is that and how can it be done?
Thanks in advance,
Edward
I have the following static arrays of different size in a class:
in header:
static double w2[2], x2[2];
static double w3[3], x3[3];
static double w4[4], x4[4];
in GaussLegendre.cpp:
double GaussLegendre::w2[2] = {1.0, 1.0};
double GaussLegendre::x2[2] = {-0.577350269189625, 0.577350269189625};
double GaussLegendre::w3[3] = {0.555555555555556, 0.8888888888888889,
0.555555555555556};
double GaussLegendre::x3[3] = {-0.774596669241483, 0.0, 0.774596669241483};
double GaussLegendre::w4[4] = {0.347854845137453, 0.652145154862546,
0.652145154862546, 0.347854845137453};
double GaussLegendre::x4[4] = {-0.861136311594053, -0.339981043584856,
0.339981043584856, 0.861136311594053};
Now I want to create a static array of pointers of x2, x3, x4 and w2,w2,w4.
I thought I could do that with just
declaring statis double* x[3] in my header and the following in .cpp:
double* GaussLegendre::x[3] = {&GaussLegendre::x2, &GaussLegendre::x3,
&GaussLegendre::x4};
but I get the following error: cannot convert from 'double (*)[2]' to
'double *
Why is that and how can it be done?
Thanks in advance,
Edward