-2
我是C++中的noobie。 我有類DataBase其中包含表(類表),我必須重載運算符以獲得下一個結果: dataBase(3,5)= someTable; - 此代碼必須用表someTable替換數據庫中的表3-5。C++超載運算符
所以,請幫助我請重載方法簽名。
我是C++中的noobie。 我有類DataBase其中包含表(類表),我必須重載運算符以獲得下一個結果: dataBase(3,5)= someTable; - 此代碼必須用表someTable替換數據庫中的表3-5。C++超載運算符
所以,請幫助我請重載方法簽名。
您DataBase
類中重載函數調用操作的簽名是:
reference_type operator()(int first, int last);
凡reference_type
是一個代理的參考,這是存儲到數據庫的引用,第一個和最後一個索引的輔助型,並重載operator=
進行更換。行內的東西:
class proxy_reference
{
public:
proxy_reference(DataBase& database, int first, int last)
: _database(database)
, _first(first), _last(last)
{}
--something-- operator=(Table const& someTable)
{
/* replace tables _first to _last from _database with someTable */
}
private:
DataBase& _database;
int _first, _last;
};