c++重载操作符
c++ overload operators
我是c++新手。我有类数据库,其中包含表(类表),我必须重载操作符来获得下一个结果:数据库(3、5)= someTable;-此代码必须将数据库中的表3-5替换为表someTable.
所以,请帮助我重载方法签名
在DataBase
类中重载函数调用操作符的签名是:
reference_type operator()( int first, int last );
其中reference_type
是一个代理引用,这是一个helper类型,它存储对数据库的引用以及第一个和最后一个索引,并重载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;
};