• <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
            設(shè)計一個長方形類Triangle,包含長和寬兩個私有數(shù)據(jù)成員。
            要求重載運(yùn)算符
            ·=
             能夠支持:對象=數(shù)值  普通變量=對象  對象=對象  支持連續(xù)的賦值
            ·+= :自定義加法功能
             聯(lián)系與=的聯(lián)系
            ·>  :實(shí)現(xiàn)比較兩個矩形對象面積大小的比較
             能夠支持:兩個對象的比較,對象和數(shù)字的比較,數(shù)字和對象的比較
            ·>> :實(shí)現(xiàn)矩形對象的輸入
            ·<< :實(shí)現(xiàn)矩形對象的輸出
              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)  編輯 收藏 引用

            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            99国内精品久久久久久久| 久久精品国产黑森林| 久久婷婷国产剧情内射白浆| 久久精品国产72国产精福利| 久久综合色之久久综合| 久久99精品久久久大学生| 久久久久人妻精品一区| 婷婷综合久久狠狠色99h| 午夜精品久久久久9999高清| 久久青青草原亚洲av无码app| 色综合久久综精品| 一本一本久久aa综合精品 | 久久久精品国产亚洲成人满18免费网站| 国产精品午夜久久| 亚洲综合日韩久久成人AV| 久久99热这里只有精品国产| 区久久AAA片69亚洲 | 久久中文字幕视频、最近更新| 狠狠色丁香久久婷婷综合| 久久综合九色综合97_久久久| 国产偷久久久精品专区| 热综合一本伊人久久精品| 国内精品久久久久久99蜜桃 | 精品久久久久久国产| 久久人妻AV中文字幕| 亚洲综合久久夜AV | 久久精品成人影院| 国产农村妇女毛片精品久久| 国产精品久久久久影院嫩草| 精品久久久无码人妻中文字幕豆芽 | 怡红院日本一道日本久久| 久久91精品国产91| 欧美伊人久久大香线蕉综合69| 日韩亚洲欧美久久久www综合网| 久久精品aⅴ无码中文字字幕重口 久久精品a亚洲国产v高清不卡 | 亚洲国产精品成人久久| 欧美亚洲国产精品久久高清| 亚洲中文字幕伊人久久无码 | 久久亚洲AV无码精品色午夜麻豆| 久久久久久久久久免免费精品 | 国产真实乱对白精彩久久|