C++程序設計方法3:數組下標運算符重載


數組下標運算符重載

函數聲明形式

返回類型operator[](參數);

如果返回類型是引用,則數組運算符調用可以出現在等式的左邊,接受賦值,即:

Obj[index] = value;

如果返回類型不是引用,則只能出現在等號的右邊

Var = Obj[index];

#include <iostream>
#include <string>

using namespace std;

char week_name[7][4] = { "mon","tu","wed","thu","fri","sat","sun" };
class WeekTemp
{
    int temp[7];
public:
    int & operator[] (const char *name)//字符串作下標
    {
        for (int i = 0; i < 7; i++)
        {
            if (strcmp(week_name[i], name) == 0)
                return temp[i];
        }
    }
};

//關於數組下標運算符重載的測試
int main()
{
    WeekTemp beijing;
    beijing["mon"] = -3;
    beijing["tu"] = -1;
    cout << "Monday Temperature:" << beijing["mon"] << endl;
    return 0;
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM