-3

DMapEntry::pData を char* から、元のポインターを含むクラス DMapData に変更する必要がありますが、変更せずに DMapEntry で &pData[offset] を参照できます。これは可能ですか?

#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;
}

ありがとう、カール

4

1 に答える 1

0
 char& operator[](size_t offset) { return pData[offset]; }
于 2013-05-17T04:32:51.273 に答える