CWnd::GetDlgItemTextint GetDlgItemText( int nID, LPTSTR lpStr, int nMaxCount ) const;
int GetDlgItemText( int nID, CString& rString ) const;返回值:
指定了被拷贝到缓冲区中的实际字节数,不包括结尾的null字符。如果没有拷贝文本,则返回0。参数: nID 指定了要获取其标题的控件的整数标识符。  
lpStr 指向要接收控件的标题或文本的缓冲区。  
nMaxCount 指定了要拷贝到lpStr的字符串的最大长度(以字节为单位)。如果字符串比nMaxCount要长,它将被截断。  
rString 对一个CString对象的引用。  ///////////////////////////////////////////////////
上面的LPTSTR lpStr和CString& rString 是接收存放的目标地址还是要从这里拷贝呢?看意思是目标地址咯
那这个函数是如何获取到字符的源地址呢?rString 对一个CString对象的引用。  这句又是如何理解?

解决方案 »

  1.   

    上面的LPTSTR lpStr和CString& rString 是接收存放的目标地址还是要从这里拷贝呢?看意思是目标地址咯 
    那这个函数是如何获取到字符的源地址呢? rString 对一个CString对象的引用。  这句又是如何理解?
    _______________________________________________________________
    是拷贝的目的地啊,就是根据那个控件ID来获得源地址的啦,至于函数里面怎么处理就清楚了rString 就是一个CString对象,用引用就是为了能返回拷贝到的字符串
      

  2.   

    rString 对一个CString对象的引用。  这句又是如何理解? 如果你把一个CString的对象带入到int GetDlgItemText( int nID, CString& rString ) const里面,则把取到的值赋给CString的对象。引用会改变变量的值。
    LPTSTR 是一个指针,是接受存放的目标地址
      

  3.   

    函数名后+const仅仅是限制该成员函数不能改变对象本身的成员。int GetDlgItemText( int nID, CString& rString ) const CString& rsString不是对象的成员,当然可以改变。