vector<CButton*>ptrButton;ptrButton.resize(10);for(int i = 0; i < 10; i++)
{
CButton* ptr;
CRect rect;
Compute(rect,i);
ptrButton[i]->Create"NULL",WS_CHILD|BS_PUSHBUTTON|WS_VISIBLE,rect,this,5000+i);
ptrButton.push_back(ptr);
}
这个代码有什么错误?其中Compute的原型是void Compute(CRect&,int);作用是计算每个CRect的位置为什么我运行的时候提示非法操作呢? 

解决方案 »

  1.   

    Create"NULL",WS_CHILD|BS_PUSHBUTTON|WS_VISIBLE,rect,this,5000+i);
    Create后面少了括号
      

  2.   

    大哥,我错了打漏了一个括号~vector<CButton*>ptrButton;ptrButton.resize(10);for(int i = 0; i < 10; i++)
    {
    CButton* ptr;
    CRect rect;
    Compute(rect,i);
    ptrButton[i]->Create("NULL",WS_CHILD|BS_PUSHBUTTON|WS_VISIBLE,rect,this,5000+i);
    ptrButton.push_back(ptr);
    }
    这段代码可以编译通过,但运行的时候提示非法操作
      

  3.   

    看看我的吧
    m_pSTATIC->Create(str,WS_BORDER|SS_CENTER|WS_VISIBLE,CRect(m_left,m_top,m_left+set_width,m_top+set_hight),this,IDC_MYSTATICS+i_count);