在此程序中,我尝试从串行端口读取数据,但是从端口读取的数据不是我喜欢的格式(大块出现)。所以我想重写ReadBytes的工作方式。

BSTR buffer_bstr;
hr = pCom->ReadBytes( &buffer_bstr );

因此,在ActiveXperts公司制造的名为AComport.h的库头中可以找到ReadBytes。当我去读字节的声明是
    virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ReadBytes(
        /* [retval][out] */ BSTR *__MIDL__IComPort0001) = 0;

这是什么意思我一直在寻找ReadBytes的实现,以便可以更改周围的事物,但我所看到的只是这个。这是什么意思?

最佳答案

那不是一个“真正的” C++函数,而是一个作为C++包装器呈现的COM对象上的成员函数。除非您实现一个实现相同COM接口(interface)的对象,否则您不能轻易覆盖或重载此函数。

关于c++ - 是否可以在C++中覆盖此虚拟方法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18409651/

10-10 18:11