#pragma once
class SocketCtrl
{
public:
SocketCtrl(void);
public:
~SocketCtrl(void);
BOOL Create(LPCSTR * pszIPAddress=NULL , int nPort=10000);
BOOL Connect();
int SendMessage(int nType=1 , LPCSTR pMessage , int nSendLen);
int ReceMessage( LPSTR& pMessage );
UINT AcceptThreadFun();
UINT HeardThreadFun();
BOOL HeartStart(bool bAutoStop=true);
BOOL HeartStop();
private:
WSADATA m_sockInit;
SOCKET m_sockHandl;
HANDLE m_hThreadHandl;
};
CPP文件
#include "StdAfx.h"
#include "SocketCtrl.h"
SocketCtrl::SocketCtrl(void)
{
}
SocketCtrl::~SocketCtrl(void)
{
}
BOOL SocketCtrl::Create( LPCSTR * pszIPAddress/*=NULL */, int nPort/*=10000*/ )
{
return true;
}
BOOL SocketCtrl::Connect()
{
return true;
}
int SocketCtrl::SendMessage( int nType/*=1 */, LPCSTR pMessage , int nSendLen )
{
return 0;
}
int SocketCtrl::ReceMessage( LPSTR& pMessage )
{
return 0;
}
UINT SocketCtrl::AcceptThreadFun()
{
return 0;
}
UINT SocketCtrl::HeardThreadFun()
{
return 0;
}
BOOL SocketCtrl::HeartStart( bool bAutoStop/*=true*/ )
{
return true;
}
BOOL SocketCtrl::HeartStop()
{
return true;
}
我什么都没做。就是建立了个类名。然后声明几个函数名字。然后运行下。就成这样了。。错误如下:
1>------ 已启动生成: 项目: MysqlClient8.1, 配置: Debug Win32 ------
1>正在编译...
1>SocketCtrl.cpp
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(9) : error C2146: 语法错误 : 缺少“;”(在标识符“Create”的前面)
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(9) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(9) : error C2061: 语法错误 : 标识符“LPCSTR”
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(9) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(9) : warning C4183: “Create”: 缺少返回类型;假定为返回“int”的成员函数
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(10) : error C2146: 语法错误 : 缺少“;”(在标识符“Connect”的前面)
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(10) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(10) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(10) : warning C4183: “Connect”: 缺少返回类型;假定为返回“int”的成员函数
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(11) : error C2061: 语法错误 : 标识符“LPCSTR”
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(12) : error C2061: 语法错误 : 标识符“LPSTR”
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(13) : error C2146: 语法错误 : 缺少“;”(在标识符“AcceptThreadFun”的前面)
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(13) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(13) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(13) : warning C4183: “AcceptThreadFun”: 缺少返回类型;假定为返回“int”的成员函数
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(14) : error C2146: 语法错误 : 缺少“;”(在标识符“HeardThreadFun”的前面)
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(14) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(14) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(14) : warning C4183: “HeardThreadFun”: 缺少返回类型;假定为返回“int”的成员函数
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(15) : error C2146: 语法错误 : 缺少“;”(在标识符“HeartStart”的前面)
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(15) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(15) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(15) : warning C4183: “HeartStart”: 缺少返回类型;假定为返回“int”的成员函数
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(16) : error C2146: 语法错误 : 缺少“;”(在标识符“HeartStop”的前面)
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(16) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(16) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(16) : warning C4183: “HeartStop”: 缺少返回类型;假定为返回“int”的成员函数
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(18) : error C2146: 语法错误 : 缺少“;”(在标识符“m_sockInit”的前面)
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(18) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(18) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(19) : error C2146: 语法错误 : 缺少“;”(在标识符“m_sockHandl”的前面)
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(19) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(19) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(20) : error C2146: 语法错误 : 缺少“;”(在标识符“m_hThreadHandl”的前面)
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(20) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.h(20) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(12) : error C2143: 语法错误 : 缺少“;”(在“SocketCtrl::Create”的前面)
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(12) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(12) : error C2065: “LPCSTR”: 未声明的标识符
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(12) : error C2065: “pszIPAddress”: 未声明的标识符
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(12) : error C2062: 意外的类型“int”
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(13) : error C2143: 语法错误 : 缺少“;”(在“{”的前面)
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(13) : error C2447: “{”: 缺少函数标题(是否是老式的形式表?)
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(17) : error C2143: 语法错误 : 缺少“;”(在“SocketCtrl::Connect”的前面)
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(17) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(17) : error C2086: “int BOOL”: 重定义
1> c:\users\administrator\desktop\socket\socket\socketctrl.cpp(12) : 参见“BOOL”的声明
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(18) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(22) : error C2061: 语法错误 : 标识符“LPCSTR”
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(27) : error C2065: “LPSTR”: 未声明的标识符
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(27) : error C2065: “pMessage”: 未声明的标识符
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(28) : error C2448: “SocketCtrl::ReceMessage”: 函数样式初始值设定项类似函数定义
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(32) : error C2143: 语法错误 : 缺少“;”(在“SocketCtrl::AcceptThreadFun”的前面)
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(32) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(33) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(37) : error C2143: 语法错误 : 缺少“;”(在“SocketCtrl::HeardThreadFun”的前面)
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(37) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(37) : error C2086: “int UINT”: 重定义
1> c:\users\administrator\desktop\socket\socket\socketctrl.cpp(32) : 参见“UINT”的声明
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(38) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(42) : error C2143: 语法错误 : 缺少“;”(在“SocketCtrl::HeartStart”的前面)
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(42) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(42) : error C2086: “int BOOL”: 重定义
1> c:\users\administrator\desktop\socket\socket\socketctrl.cpp(12) : 参见“BOOL”的声明
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(43) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(47) : error C2143: 语法错误 : 缺少“;”(在“SocketCtrl::HeartStop”的前面)
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(47) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(47) : error C2086: “int BOOL”: 重定义
1> c:\users\administrator\desktop\socket\socket\socketctrl.cpp(12) : 参见“BOOL”的声明
1>c:\users\administrator\desktop\socket\socket\socketctrl.cpp(48) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>生成日志保存在“file://c:\Users\Administrator\Desktop\MysqlClient8.1\MysqlClient8.1\Debug\BuildLog.htm”
1>MysqlClient8.1 - 60 个错误,6 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
6 个解决方案
#1
请问。。如何解决。。???
#2
.h中缺少一些类型的头文件
比如WSADATA 把头include进去。
比如WSADATA 把头include进去。
#3
#include <windows.h>
#4
缺少头文件
#5
缺少头文件
#6
#include <stdlib.h>
#include <stdio.h>
#include <Windows.h>
//加上这几个头文件试试
#1
请问。。如何解决。。???
#2
.h中缺少一些类型的头文件
比如WSADATA 把头include进去。
比如WSADATA 把头include进去。
#3
#include <windows.h>
#4
缺少头文件
#5
缺少头文件
#6
#include <stdlib.h>
#include <stdio.h>
#include <Windows.h>
//加上这几个头文件试试