标题:运算符重载,编译没错,为什么结果不对呢?多谢帮忙看看。
只看楼主
ybjkl
Rank: 2
等 级:论坛游民
帖 子:86
专家分:85
注 册:2011-6-21
结帖率:95.65%
已结贴  问题点数:10 回复次数:5 
运算符重载,编译没错,为什么结果不对呢?多谢帮忙看看。
#include"iostream.h"
class Matrix
{
    int matrix[3][3];
public:
    Matrix();
    friend Matrix operator+(Matrix &a,Matrix &b);
    friend ostream & operator<<(ostream &os,Matrix &m);
    friend istream & operator>>(istream &is,Matrix &m);
};

Matrix::Matrix()
{
    for(int i=0;i<3;i++)
        for(int j=0;j<3;j++)
            matrix[i][j]=0;
}

Matrix operator+(Matrix &a,Matrix &b)
{
    Matrix c;
        for(int i=0;i<3;i++)
        for(int j=0;j<3;j++)
            c.matrix[i][j]=a.matrix[i][j]+b.matrix[i][j];
        return c;
}

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

istream & operator >>(istream &is,Matrix &m)
{
    cout<<"请输入矩阵数据:"<<endl;
        for(int i=0;i<3;i++)
        for(int j=0;j<3;j++)
            is>>m.matrix[i][j];
        return is;
}

void main()
{
    Matrix m,m1,m2;
    cin>>m1;
    cin>>m2;
    cout<<"Matrix m1:\n"<<m1<<endl;
    cout<<"Matrix m2:\n"<<m2<<endl;
    m=m1+m2;
    cout<<"Matrix m1+m2=\n"<<m<<endl;
}
搜索更多相关主题的帖子: matrix class include public Matrix 
2012-02-27 13:10
飞扬_余
Rank: 2
等 级:论坛游民
帖 子:9
专家分:17
注 册:2011-12-15
得分:0 
新手,也学学
2012-02-27 13:56
ybjkl
Rank: 2
等 级:论坛游民
帖 子:86
专家分:85
注 册:2011-6-21
得分:0 
没人帮忙看看吗?
2012-02-27 20:37
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
得分:10 
程序代码:
ostream & operator <<(ostream &os,Matrix &m)
{
    for(int i=0;i<3;i++)
    {
        for(int j=0;i<3;j++)    // i < 3 的话,你觉得这个循环还有希望吗?
            os<<m.matrix[i][j]<<" ";
        os<<endl;
    }
    return os;
}
2012-02-28 02:25
mayuebo
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:6
帖 子:257
专家分:1282
注 册:2005-9-8
得分:0 
仔细

成功贵在坚持
2012-02-28 08:05
ybjkl
Rank: 2
等 级:论坛游民
帖 子:86
专家分:85
注 册:2011-6-21
得分:0 
唉,真想抽自己几下,多谢啦,嘻嘻
2012-02-28 13:38



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-361708-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.089350 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved