我将通过一个例子更好地形成问题。
我想扩展Qtcpsocket
以下方式的默认实现:
class NumberedTcpSocket : public QTcpSocket
{
Q_OBJECT
public:
NumberedTcpSocket(QObject *parent=0);
int number;
};
我在这里唯一要做的就是在int number
QTcpSocket 的默认实现中添加一个字段。我需要这个来枚举打开的套接字。
但是,其余的网络类使用或返回一个Qtcpsocket
. 我所做的改变很小并不重要。
我想做这样的事情:
NumberedTcpSocket *clientConnection = returnsPointerToQTcpSocket();
clientConnection->number = predefined_number;
在这种情况下需要进行什么样的铸造?它是否包括对构造函数的更改NumberedTcpSocket
?