定义一个数组类Array,实现二维数组的重载。通过重载运算符“+”,顺时针旋转90度,即使得元素b[i][j]变成b[j][M-1-i]。
通过重载运算符“-”,实现逆时针旋转90度,即使得元素b[i][j]变成b[M-1-J][i]。具体要求如下:
1)私有数据成员
int b[M][M] //数组成员,存放数组
2)公有成员函数
Array((int *p)[M]) //构造函数,以形参初始化数据成员
void operator+()//重载函数,使得数组顺时针旋转90度
friend void operator-(Array &b) //重载函数,使得数组逆时针旋转90度
void print()//输出数组成员
在主函数中测试定义的类,输出原始数组和旋转之后的数组
int main(){
int a[][M]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};
Array arr(a);
arr.print();
cout<<'\n';
+arr;
arr.print();
cout<<'\n';
-arr;
arr.print();
return 0;
}