首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Poco::Net::SocketStream不存在默认构造函数

Poco::Net::SocketStream不存在默认构造函数
EN

Stack Overflow用户
提问于 2021-11-14 19:07:42
回答 1查看 59关注 0票数 0

我正在尝试在c++中创建一个TCP Modbus Master类,在这个类中,我需要定义一个Poco::Net::SocketStream对象。

代码语言:javascript
复制
class TCPModbusMaster {
    private:
        Poco::Net::SocketStream str;

    public:
        TCPModbusMaster(Poco::Net::SocketStream str) {
            this->str = str;
        }
};

但在这种情况下,visual studio给了我这两个错误:

1- no default constructor exists for class Poco::Net::SocketStream

2-包含( function "Poco::Net::SocketStream::operator=(const Poco::Net::SocketStream &)" (declared implicitly) cannot be referenced -- it is a deleted function ->str= str)的行的字符串

对于错误1,我尝试为类Poco::Net::SocketStream添加一个默认构造函数

代码语言:javascript
复制
Poco::Net::SocketStream::SocketStream() {

}

但是我得到了这个错误:

no instance of overloaded function "Poco::Net::SocketStream::SocketStream" matches the specified type

我能做什么?

EN

回答 1

Stack Overflow用户

发布于 2021-11-15 20:05:54

首先,您需要一个StreamSocket (即TCP套接字)。然后,您可以从它创建一个SocketStream

代码语言:javascript
复制
class TCPModbusMaster {
    private:
        Poco::Net::SocketStream str;

    public:
        TCPModbusMaster(Poco::Net::StreamSocket sock): str(sock){}
};

(请注意,streams are not copyable)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69966283

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档