私が持っているとしましょう
struct someStruct
{
int a;
};
そして2クラス。
最初のクラスのメソッドで、構造体のインスタンスを作成します。
someStruct structName;
今、この構造体のアドレスを別のクラスのコンストラクターに渡したい
std::auto_ptr<2ndClass> 2ndClass_ (new 2ndClass(structName));
ここで 2ndClass で変更された構造体の値を使用したい - 以下を読んでください...
2 番目のクラスには次のものがあります。
ヘッダ:
...
class 2ndClass...
...
private:
someStruct &structName2;
public:
__fastcall 2ndClass(someStruct &structName);
...
cpp:
__fastcall 2ndClass::2ndClass(someStruct &structName)
: structName2(structName)
{
...
これは明らかに structName のコピーを作成します。
私の質問は次のとおりです。structName から structName2 にアドレスを割り当てて、構造体に読み書きし、2 番目のクラスを離れた後に最初のクラスでそれらの値を使用できるようにするにはどうすればよいですか? 構造体へのポインタを使用せずにどうすればよいですか?