这是我的尝试和错误:
代码:
TCHAR* pszDisplayName_I; //$I .. file
TCHAR *pDollar = NULL;
pszDisplayName_I = ((CString)saSursa.GetAt(i)).GetBuffer();
pDollar = _tcsrchr(pszDisplayName_I,'$');
*(pDollar + 1) = 'I';
错误:
error C2248: 'CObject::CObject' : cannot access private member declared in class 'CObject' C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\afxcoll.h
对于 getBuffter 函数,我发现了这个:
返回指向 CString 对象的内部字符缓冲区的指针。返回的 LPTSTR 不是 const,因此允许直接修改 CString 内容。 所以没关系。但是对于 getAt(0) 函数,它是这样说的:
CObject* GetAt(
INT_PTR nIndex
) const;
就是这样,const 的事情,有没有办法解决这个问题?一种我可以从 CStringArray 中获取可修改 CString 元素的方法。