找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2135|回復(fù): 0
收起左側(cè)

運(yùn)算符重載

[復(fù)制鏈接]
ID:51090 發(fā)表于 2014-9-17 02:38 | 顯示全部樓層 |閱讀模式
                                                                                                    運(yùn)算符重載,在C++里我已經(jīng)學(xué)習(xí)過,不過對(duì)于這個(gè)概念我還是有那么一點(diǎn)點(diǎn)模糊,而且在C#里它有更嚴(yán)格的要求。關(guān)于運(yùn)算符的重載,使用operator來指明即將要重載的運(yùn)算符,后面是參數(shù)表,我自己編寫了一個(gè)簡(jiǎn)單的C#代碼來簡(jiǎn)要的說明C++中的Cstring,這個(gè)過程可能你會(huì)覺得有點(diǎn)多余。

        class Cstring
        {
            string text;
            public string Text//                        屬性查看器,在C++里是沒有這個(gè)概念的,用于獲取或設(shè)置某個(gè)成員
            {
                get;
                set;
            }
            public Cstring()//                            構(gòu)造函數(shù)
            {
                Text = null;
            }
            public Cstring(string str)//            帶一個(gè)參數(shù)的構(gòu)造函數(shù)
            {
                Text = str.ToString();
            }
            public static Cstring operator +(Cstring lhs, Cstring rhs)//         連接字符串
            {
                Cstring str;
                str = new Cstring();
                str.Text = lhs.Text;
                str.Text += rhs.Text;
                return str;
            }
            public static Cstring operator *(Cstring lhs, int mul)//                  復(fù)制字符串
            {
                Cstring str;
                str = new Cstring();
                while(mul!=0)
                {
                    str.Text += lhs.Text;
                    mul--;
                }
                return str;
            }
        }

  運(yùn)算符的重載大概意思也就是返回(生成)一個(gè)新對(duì)象,并將重載運(yùn)算符當(dāng)作一個(gè)方法(函數(shù))來看待。我是這么理解的。


回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表