• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 183,  comments - 10,  trackbacks - 0
            設計一個長方形類Triangle,包含長和寬兩個私有數據成員。
            要求重載運算符
            ·=
             能夠支持:對象=數值  普通變量=對象  對象=對象  支持連續的賦值
            ·+= :自定義加法功能
             聯系與=的聯系
            ·>  :實現比較兩個矩形對象面積大小的比較
             能夠支持:兩個對象的比較,對象和數字的比較,數字和對象的比較
            ·>> :實現矩形對象的輸入
            ·<< :實現矩形對象的輸出
              1 #include <iostream>
              2 using namespace std;
              3 
              4 class Triangle
              5 {
              6 private:
              7     double length;
              8     double width;
              9 public:
             10     Triangle(double l = 0.0double w = 0.0) : length(l), width(w) {}
             11     ~Triangle() {}
             12     Triangle(const Triangle& t) : length(t.length), width(t.width) {}
             13     Triangle& operator =(const Triangle& t)
             14     {
             15         if (this != &t)
             16         {
             17             length = t.length;
             18             width  = t.width;
             19         }
             20         return *this;
             21     }
             22     Triangle& operator =(double d)
             23     {
             24         length = width = d;
             25         return *this;
             26     }
             27     operator double ()
             28     {
             29         return length * width;
             30     }
             31     Triangle& operator +=(const Triangle& t)
             32     {
             33         length += t.length;
             34         width  += t.width;
             35         return *this;
             36     }
             37     friend bool operator > (const Triangle& lhs, const Triangle& rhs);
             38     friend bool operator > (const Triangle& lhs, double rhs);
             39     friend bool operator > (double lhs,          const Triangle& rhs);
             40     friend istream& operator >>(istream& in,     Triangle& rhs);
             41     friend ostream& operator <<(ostream& out,    const Triangle& rhs);
             42 };
             43 
             44 bool operator >(const Triangle& lhs, const Triangle& rhs)
             45 {
             46     return lhs.length * lhs.width > rhs.length * rhs.width;
             47 }
             48 
             49 bool operator >(const Triangle& lhs, double rhs)
             50 {
             51     return lhs.length * lhs.width > rhs;
             52 }
             53 
             54 bool operator >(double lhs, const Triangle& rhs)
             55 {
             56     return lhs > rhs.length * rhs.width;
             57 }
             58 
             59 istream& operator >>(istream& in, Triangle& rhs)
             60 {
             61     in >> rhs.length >> rhs.width;
             62     if (!in)
             63     {
             64         cerr << "Input error!" << endl;
             65         exit(1);
             66     }
             67     return in;
             68 }
             69 
             70 ostream& operator <<(ostream& outconst Triangle& rhs)
             71 {
             72     out << rhs.length << '\t' << rhs.width;
             73     return out;
             74 }
             75 
             76 Triangle& operator +(const Triangle& lhs, const Triangle& rhs)
             77 {
             78     Triangle tmp(lhs);
             79     return tmp += rhs;
             80 }
             81 
             82 int main()
             83 {
             84     Triangle t1(1.02.0);
             85     Triangle t2;
             86     t1 = t2;
             87 
             88     cin >> t1 >> t2;
             89     cout << t1 << endl;
             90     cout << t2 << endl;
             91 
             92     t1 = t2;
             93     cout << t1 << endl;
             94     cout << t2 << endl;
             95 
             96     t1 = 10.0;
             97     cout << t1 << endl;
             98     double d = 0.0;
             99     d = t1;
            100     cout << d << endl;
            101 
            102     cout << (t1 > t2) << endl;
            103     cout << (t1 > 5.0<< endl;
            104     cout << (5.0 > t1) << endl;
            105 
            106     t1 += t2;
            107     cout << t1 << endl;
            108     cout << t2 << endl;
            109 
            110     return 0;
            111 }
            posted on 2011-04-29 00:40 unixfy 閱讀(201) 評論(0)  編輯 收藏 引用
            久久精品国产欧美日韩| 久久狠狠高潮亚洲精品| 看全色黄大色大片免费久久久| 久久综合久久综合久久综合| 欧美久久久久久午夜精品| 国产美女亚洲精品久久久综合| 久久久久久亚洲精品成人| 久久午夜无码鲁丝片午夜精品| 久久亚洲AV成人无码国产| 久久国产影院| 国产精品18久久久久久vr| 久久人妻AV中文字幕| 婷婷综合久久狠狠色99h| 一级女性全黄久久生活片免费| 久久久精品午夜免费不卡| 久久亚洲国产成人影院| 精品欧美一区二区三区久久久| 国内精品人妻无码久久久影院导航| 99久久99久久精品免费看蜜桃| 久久午夜免费视频| 精品99久久aaa一级毛片| 色综合久久久久无码专区| 亚洲欧美国产日韩综合久久| 93精91精品国产综合久久香蕉| 日韩精品久久久久久久电影蜜臀 | 精品免费久久久久国产一区 | 人妻精品久久无码区| 日韩久久无码免费毛片软件| 青青草原综合久久| 亚洲狠狠久久综合一区77777| 国产亚洲精久久久久久无码| 一本久道久久综合狠狠爱| 色综合久久夜色精品国产| 日本高清无卡码一区二区久久| 国产精品美女久久久久av爽| 久久最近最新中文字幕大全| 狠狠久久亚洲欧美专区| 精品久久久久久亚洲| 伊人久久精品线影院| 99国内精品久久久久久久| 大香网伊人久久综合网2020|