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

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


            香蕉久久夜色精品国产2020| 久久精品国内一区二区三区| 中文字幕精品久久| 亚洲中文字幕久久精品无码APP | 色天使久久综合网天天| 欧美亚洲色综久久精品国产| www.久久热.com| 99久久综合国产精品免费| 国产成人久久激情91| 偷窥少妇久久久久久久久| 国内精品久久久久影院免费| 精品久久久中文字幕人妻| 国产福利电影一区二区三区久久久久成人精品综合 | 人妻精品久久久久中文字幕69 | 青青青青久久精品国产| 久久综合偷偷噜噜噜色| 91精品免费久久久久久久久| 久久精品人人做人人爽电影蜜月| 精品久久综合1区2区3区激情| 久久精品aⅴ无码中文字字幕重口 久久精品a亚洲国产v高清不卡 | 中文字幕无码久久人妻| 精品久久人人妻人人做精品| 色综合久久综精品| 国产精品久久久久久吹潮| 久久精品亚洲AV久久久无码| 无码国内精品久久人妻麻豆按摩| 久久99精品久久久久久不卡| 国产精品久久自在自线观看| 99久久国产综合精品麻豆| 国内精品久久久久| 99久久99久久精品免费看蜜桃 | 久久久久这里只有精品| 93精91精品国产综合久久香蕉| 99久久精品国内| 国产精品99久久久久久www| 999久久久国产精品| 久久狠狠一本精品综合网| 久久亚洲欧洲国产综合| 亚洲欧美久久久久9999| 97精品依人久久久大香线蕉97| 亚洲中文久久精品无码ww16|