C++ Qt写入Unix套接字

6

我有一个位于 /tmp/my_sock 的 Unix Socket。

如何连接并写入数据?Qt 中是否有实现此功能的方法?


关于使用Qt的方法,我假设你已经查看了 - Qt信号和槽 - arunkumar
Qt的方式是不使用Unix套接字。C++的方式是使用C的方式。 - San Jacinto
3
信号和槽在这种情况下如何帮助?我们中有一个人感到困惑。 - San Jacinto
2个回答

8

Qt通过QLocalSocketQLocalServer原生支持Unix域套接字。

你需要作为第一个参数传递给QLocalSocket::connectToServer的名称是套接字路径:"/tmp/my_sock"


1

截至2011年,Qt并没有任何支持套接字的功能,因为Qt的口号是“跨平台”。

如果您想在Qt程序中使用套接字,您应该通过标准Linux函数socket(), connect()等来实现套接字通信,或者基于QAbstractSocket实现自己的类。


3
我会尽力进行翻译,请问需要翻译的内容是:“I'm not going to nitpick to the point of a downvote, but you're wrong. I think what you meant to say was that Qt does not easily support native sockets through the API.”? - San Jacinto
@San Jacinto:没错。而且,没有必要挑剔,我只会给荒谬的答案投反对票,这不是你的情况。 - Andrejs Cainikovs

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接