我写的函数声明是 void insertface(CString,int pos=-1);定义是  void CSendRichEdit::insertface(CString csfacepath,int pos)
{
    pos=pos;
}可是每次调用insertface("123");  pos都只是0或者1  即使我把声明改成void insertface(CString,int pos=0); 它也有时候蹦出1出来  为什么会这样呢

解决方案 »

  1.   

    右边的是你传的参数pos,左边的是编译器指向你调用该函数的对象的指针
    所以...
      

  2.   


    你们在说什么啊  那个说this->pos=pos;的人不是我啊 我只是举个例子  就算是
    void CSendRichEdit::insertface(CString csfacepath,int pos)
    {
      int a=1;
    }
    单步调试还是看到POS的异常
      

  3.   

    void insertface(CString,int pos=-1);void CSendRichEdit::insertface(CString csfacepath,int pos)
    {}上面的函数不是下面函数的签名。下面是成员函数。
      

  4.   


    那个void insertface(CString,int pos=-1);就是在类里面声明的啊