C++のオペレータオーバーロードにおいて、とあるクラスAに対し、
このように書いた時のオペレータはどこでどのように使用すると適用されるのかわかりません。
教えて頂けると幸いです。
以下にサンプルコードを示します。
#include <iostream>
using std::cin;
using std::cout;
using std::endl;
/* int値を1つ保持するだけのクラス */
class A {
private:
//値の保持
int m_val;
public:
//コンストラクタ
A(int val = 0) { m_val = val; }
//デストラクタ
~A() {}
//値の取得
int GetVal() { return m_val; }
public:
/* 使い方がわからないオペレータ */
void operator = (A* pA) {
m_val = pA->m_val;
}
};
/* メイン関数 */
int main() {
A* a1 = new A(1);
A* a2 = new A(2);
cout << a1->GetVal() << endl;
cout << a2->GetVal() << endl;
delete a1;
delete a2;
return 0;
}