我有一项任务,我被困住了,我整天都在研究,空手而归:
我正在使用两个类:ClassA
必须具有唯一的重载分配和重载插入。 ClassB
必须具有唯一的重载分配,重载提取和重载插入。
ClassA
有数据成员:int altitude
,char code
,string area
ClassB
只有一个classA
:classA* data[30]
所有重载运算符在每个类中都必须是唯一的。当我为ClassB
重载插入或提取时,我得到一个错误,即datamember是私有的,我假设是因为我正在读取的数组是数据类型ClassA
。我不能将ClassB
中的好友功能复制到ClassA
。这甚至可能吗?
class classB;
class classA
{
friend class classB;
friend ostream & operator<<(ostream&, const classA&);
void operator=(const classA&);
int altitude;
char code;
string area;
};
class classB
{
friend ostream& operator<<(ostream&, const classB&);
friend istream& operator>>(istream&, classB&);
public:
void operator=(const classB&);
void sort();
private:
classA* dataVals[30];
};
我确定我的重载函数写得正确。我们获得了重载运算符的基础知识和我刚刚提供的指示,这就是全部。