【发布时间】:2012-02-10 12:58:33
【问题描述】:
我有许多代表各种计算机组件的类,每个类都有一个重载的<< 运算符,声明如下:
friend ostream& operator << (ostream& os, const MotherBoard& mb);
每个都返回一个 ostream 对象,该对象具有描述该组件的唯一流,其中一些由其他组件组成。我决定创建一个名为 Component 的基类,以生成唯一的 id 以及所有组件将公开派生的其他一些函数。当然,重载的<< 运算符不适用于指向Component 对象的指针。
我想知道如何实现像纯虚函数这样的东西,它将被每个派生类的 << 运算符覆盖,这样我就可以执行以下操作:
Component* mobo = new MotherBoard();
cout << *mobo << endl;
delete mobo;
【问题讨论】:
标签: c++