c++ *運算符重載。本站提示廣大學習愛好者:(c++ *運算符重載)文章只能為提供參考,不一定能成為您想要的結果。以下是c++ *運算符重載正文
運算符重載,對象和指向對象的指針
直接上code
#include <iostream>
using namespace std;
class test
{
public:
int a;
test() : a(0){}
test &operator*(){
cout << "operator*" << endl;
cout << a << endl;
return *this;
}
};
int main()
{
test *t;
t = new test;
test t2 = *t;
t->a += 1;
// t2.a += 1;
*t = *t2;
*t; // 這一行 *t2; // **t; // 留意*t 和 **t這兩個的差異
return 0;
}
運轉成果:
t是指向test對象的指針,(*t) 也就是一個test對象。
所以只要 *t才真實的挪用了 運算符的重載函數。