我需要将charap *中的DMapEntry :: pData更改为包含原始指针但仍能在DMapEntry中引用& pData [offset]而不更改它的类DMapData。这可能吗?
#include "stdafx.h"
class DMapData {
char* pData;
public:
char* operator->() { return pData; }
char operator[](size_t offset) { return pData[offset]; }
friend class DMapEntry;
};
class DMapEntry {
char* pStr;
public:
DMapData pData;
/*----->*/ void getStr(size_t offset) { pStr = &pData[offset]; }
};
int _tmain(int argc, _TCHAR* argv[])
{
DMapEntry a;
return 0;
}
谢谢, 卡尔
答案 0 :(得分:0)
char& operator[](size_t offset) { return pData[offset]; }