#include <iostream>
using namespace std;
class Aaa
{
friend const Aaa operator*(const Aaa &L,const Aaa &R);
private:
int a;
int b;
public:
Aaa(){}
Aaa(int a,int b):a(a),b(b){}
void show()
{
cout << "a=" << a << endl << "b=" << b << endl;
}
const Aaa operator*(const Aaa &p) const/*成员函数实现“*”号运算符重载*/
{
Aaa temp;
temp.a = a * p.a;
temp.b = b * p.b;
return temp;
}
};
//const Aaa operator*(const Aaa &L,const Aaa &R)/*全局函数实现“*”号运算符重载*/
//{
// Aaa temp;
// temp.a = L.a * R.a;
// temp.b = L.b * R.b;
// return temp;
//}
int main()
{
Aaa a1(15,20);
Aaa a2(2,3);
Aaa a3 = a1 * a2;
a3.show();
return 0;
}
#include <iostream>
using namespace std;
class Aaa
{
friend const Aaa operator/(const Aaa &L,const Aaa &R);
private:
int a;
int b;
public:
Aaa(){}
Aaa(int a,int b):a(a),b(b){}
void show()
{
cout << "a=" << a << endl << "b=" << b << endl;
}
// const Aaa operator/(const Aaa &p) const/*成员函数实现“/”号运算符重载*/
// {
// Aaa temp;
// temp.a = a / p.a;
// temp.b = b / p.b;
// return temp;
// }
};
const Aaa operator/(const Aaa &L,const Aaa &R)/*全局函数实现“/”号运算符重载*/
{
Aaa temp;
temp.a = L.a / R.a;
temp.b = L.b / R.b;
return temp;
}
int main()
{
Aaa a1(15,20);
Aaa a2(2,3);
Aaa a3 = a1 / a2;
a3.show();
return 0;
}