⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 demo_operator_07_c.cpp

📁 对于一个初涉VC++的人来书
💻 CPP
字号:

//************************************************
// 定义一个矩阵类,重载运算符"+"实现矩阵加法运算
// 并重载流插入操作符"<<"和流提取操作符">>",使之
// 用于矩阵的输入和输出.
//************************************************

#include <iostream.h>

class Matrix
{
public:
	Matrix();
    friend Matrix operator+(Matrix &,Matrix &);
    friend ostream& operator<<(ostream&,Matrix&);
    friend istream& operator>>(istream&,Matrix&);
private:
    int mat[2][3];
};
 
Matrix::Matrix()
{
	for(int i=0;i<2;i++)
		for(int j=0;j<3;j++)
			mat[i][j]=0;
}

Matrix operator+(Matrix &a,Matrix &b)
{
	Matrix c;

	for(int i=0;i<2;i++)
		for(int j=0;j<3;j++)
			c.mat[i][j]=a.mat[i][j]+b.mat[i][j];

	return c;
}

istream& operator>>(istream &in,Matrix &m)
{
	cout<<"input value of matrix:"<<endl;

	for(int i=0;i<2;i++)
		for(int j=0;j<3;j++)
			in>>m.mat[i][j];

	return in;
}

ostream& operator<<(ostream &out,Matrix &m)
{
	for(int i=0;i<2;i++)
	{
		for(int j=0;j<3;j++)
			out<<m.mat[i][j]<<" ";
		out<<endl;
	}

	return out;
}

int main()
{
	Matrix a,b,c;

	cin>>a;
	cin>>b;
	cout<<endl<<"Matrix a:"<<endl<<a<<endl;
	cout<<endl<<"Matrix b:"<<endl<<b<<endl;

	c=a+b;
	cout<<endl<<"Matrix c = Matrix a + Matrix b :"<<endl<<c<<endl;

	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -