【问题标题】:Method returning a WinSock2 SOCKET doesn't compile [closed]返回 WinSock2 SOCKET 的方法无法编译 [关闭]
【发布时间】:2020-03-19 17:32:51
【问题描述】:

我想使用 WinSock2 在 c++ 中创建一个返回 SOCKET 对象的方法。

//header
#pragma once
class MyClass
{
public:
    SOCKET createSocket();

};

//definitions

#include "class.h"
#include <WinSock2.h>
SOCKET MyClass::createSocket()
{
    return SOCKET();
}

然而,Visual Studio 抛出一个错误(E0147, C++ Die Deklaration ist nicht mit " (deklariert in Zeile 7 von)" kompatibel。)

我该如何解决这个问题?

【问题讨论】:

  • 头文件应该有#include &lt;WinSock2.h&gt;
  • 在 class.h 之前包含 WinSock2 或将其包含在 class.h 中。一般来说,这会减慢编译速度,因此请考虑包含在预编译的头文件中

标签: c++ sockets winsock2


【解决方案1】:

标头中缺少#include &lt;WinSock2.h&gt;。 (感谢约翰尼·莫普)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-25
    • 2017-01-18
    • 1970-01-01
    • 2014-01-30
    • 2017-10-02
    • 2014-05-03
    • 2011-12-08
    • 2023-01-27
    相关资源
    最近更新 更多