double CSpaceResectionDlg::Init_X_Value(double *init_X)
{
        double initalfa;
double initw;
double initk;

double initXS = (m_nXA+m_nXB+m_nXC+m_nXD)/4;
double initYS = (m_nYA+m_nYB+m_nYC+m_nYD)/4;
double initZS = m_nf*(1/m_nscale);     
    
return (double*)init_X[initXS,initYS,initZS,initalfa,initw,initk];
}我想建一个返回数组的函数,数组是init_X[initXS,initYS,initZS,initalfa,initw,initk];可是出错了
F:\2008-2009自己的程序\SpaceResection\SpaceResectionDlg.cpp(544) : error C2108: subscript is not of integral type
F:\2008-2009自己的程序\SpaceResection\SpaceResectionDlg.cpp(544) : error C2440: 'return' : cannot convert from 'double *' to 'double'
        There is no context in which this conversion is possible

解决方案 »

  1.   

    我在return  加了(double*)了啊
      

  2.   

    (double*)是指针类型  
    怎么会是Double?
      

  3.   

    定义个结构吧,struct
    {
    double  a;
    double  c;
    ...
    };函数返回结构指针
      

  4.   

    你的函数返回类型为double而不是double*,
    init_X[initXS,initYS,initZS,initalfa,initw,initk]是什么语法,没见过。
      

  5.   

    return (double*)init_X[initXS,initYS,initZS,initalfa,initw,initk]; ????????
      

  6.   

    double CSpaceResectionDlg::Init_X_Value(double *init_X) 
    这里只是能返回double你明明写着怎么又返回数组