cannot determine which instance of overloaded function “…” is intended

591
14 января 2017, 12:51

Packet.cpp

#include "Packet.h"
_DBC_BEGIN
WPacket & WPacket::operator=(rbuf*  bbuf)
{
    rptr<rbuf>::operator=bbuf; 
// cannot determine which instance of overloaded function "dbc::rptr<T, sync>::operator= [with T=dbc::rbuf, sync=false]" is intended    
}
_DBC_END

Packet.h

#ifndef PACKET_H
#define PACKET_H
#include "BaseBuf.h"
_DBC_BEGIN
//============rptr===========================================
template<class T, bool sync = false>
class rptr
{
public:
    rptr() : m_objptr(0){}
    rptr& operator=(T* object)
    {
            m_objptr = object;
            return *this;
    }
    T* operator ->() const { return m_objptr; }
private:
    T* m_objptr;
};
//===========================================================
class WPacket : private rptr<rbuf>
{
public:
    //cChar* GetDataAddr() { return (*this)->getbuf() + m_head + m_offset; }
    WPacket& operator= (rbuf* bbuf);
private:
    uLong m_head;
    uLong m_offset;
};
//===========================================================
_DBC_END
#endif // !PACKET_H

BaseBuf.h

#include "robject.h"
#include "PreAlloc.h"
#include <stdlib.h>
#pragma once
_DBC_BEGIN
class BaseBuf  
{
public:
    BaseBuf(uLong size) : m_size(size), m_buf((char*)malloc(size)){}
    char* getbuf() { return m_buf; }
private:
    char    *const m_buf;
    cuLong m_size;
};
//===========================================================
class rbuf : public BaseBuf
{
    rbuf(uLong size):BaseBuf(size){}
};
//===========================================================
_DBC_END
Answer 1

А вы не пробовали вместо

rptr<rbuf>::operator=bbuf; 

написать

rptr<rbuf>::operator=(bbuf); 

?

READ ALSO
Web framework для языка c/c++

Web framework для языка c/c++

Здравствуйте! Вопрос такойСобираюсь писать приложение где требуется что бы все работало очень быстро

327
Structure Definitions [требует правки]

Structure Definitions [требует правки]

Прочел в книгах не очень-то понял про Structure Definitions C++Вкратце объясните плес

268
Как вызвать родительский метод из тела перегруженного в С++?

Как вызвать родительский метод из тела перегруженного в С++?

Есть классУ него есть другой класс-наследник

262
Перенос rich текста между редакторами

Перенос rich текста между редакторами

Подскажите, как переносится форматирование и rich текст при копировании между совершенно разными редакторами, например Google Docs в браузере и Word на ПКЧто...

330