散分200,庆祝发现 VC7 与 C++ 标准冲突,还是咱们的BCB好啊
// 冲突点:VC7 WIN32 工程中,全局类变量的构造函数和析构函数不会被执行
// 下面是测试代码
// 这是VC7 WIN32 控制台工程的主文件
// mainunit.cpp
#include <stdio.h>
#include <windows.h>
//----------------------------------------------------------------------
// 类定义
class TTcpClient
{
public:
TTcpClient();
~TTcpClient();
BOOL Open(VOID);
BOOL Close(VOID);
private:
SOCKET mSocket;
};
//----------------------------------------------------------------------
// 类实现
TTcpClient::TTcpClient()
{
mSocket = INVALID_SOCKET;
}
TTcpClient::~TTcpClient()
{
Close();
}
BOOL TTcpClient::Open(VOID)
{
if ( mSocket == INVALID_SOCKET )
{
return TRUE;
}
return FALSE;
}
BOOL TTcpClient::Close(VOID)
{
if ( mSocket != INVALID_SOCKET )
{
mSocket = INVALID_SOCKET;
}
return TRUE;
}
//----------------------------------------------------------------------
// 定义全局类变量
TTcpClient mClient;
//----------------------------------------------------------------------
// 程序主函数
int main()
{
if ( mClient.Open() )
{
printf("\nProcess OK");
}
else
{
printf("\nProcess Error");
}
printf("\n");
system("pause");
}