0x003baf00标量删除析构函数'unsigned int

时间:2011-10-04 15:52:44

标签: visual-c++

我正在用c ++构建游戏。我有一个名为eggAI的类和一个在线程中运行的套接字侦听器。在接收插座时,蛋向前移动。所以我正在创建一个eggAI类的实例并将其向前移动(因为套接字侦听器函数必须是静态的)。这是如何处理插座接收

eggAI *mn = new eggAI();
mn->bMoveForward(true);

我的游戏正在运行,但鸡蛋没有移动插座接收。我试图调试并发现问题出在mn-> bMoveForward(true),调试显示我 0x003baf00标量删除析构函数'(unsigned int)。请注意,在eggAI.h中,我定义了一个构造函数和一个析构函数,在eggAI.cpp中,我实现了它们:

// eggAI.h

#ifndef __eggAI_h__
#define __eggAI_h__
//------------------------------------------------------------------------------
#include "S3DX/S3DXAIModel.h"
#include "chasing_the_egg_Plugins.h"
#pragma comment(lib, "ws2_32.lib")
#include <winsock2.h>    
#include <process.h>
#include <stddef.h>
#include <stdlib.h>
#include <windows.h>
#include <conio.h>
#include <stdio.h>
//------------------------------------------------------------------------------
S3DX_DECLARE_AIMODEL( eggAI )
{
public:

    // Handlers:
    // 
    S3DX_DECLARE_HANDLER( onInit );
    S3DX_DECLARE_HANDLER( onMouseMove );
    S3DX_DECLARE_HANDLER( onEnterFrame );
    S3DX_DECLARE_HANDLER( onCaptureInput );
    S3DX_DECLARE_HANDLER( onKeyboardKeyUp );
    S3DX_DECLARE_HANDLER( onKeyboardKeyDown );

    // States:
    // 

    // Functions:
    // 
    void createHUD ( );
    void showMouse ( S3DX::AIVariable b = S3DX::nil );
    static unsigned __stdcall socketing (void *pi);
    void centerMouse ( );
    void createDynamic ( );
    void updateCharPos ( );
    void updateDynamics ( );
    static unsigned __stdcall direction (void *ea);
    eggAI();
    virtual ~ eggAI();

    // Variables:
    // 
    S3DX_DECLARE_VARIABLE( nSpeed );
    S3DX_DECLARE_VARIABLE( hDynObj );
    S3DX_DECLARE_VARIABLE( nGravity );
    S3DX_DECLARE_VARIABLE( bMoveBack );
    S3DX_DECLARE_VARIABLE( nCurAngleH );
    S3DX_DECLARE_VARIABLE( nCurAngleV );
    S3DX_DECLARE_VARIABLE( nDstAngleH );
    S3DX_DECLARE_VARIABLE( nDstAngleV );
    S3DX_DECLARE_VARIABLE( bMoveForward );
    S3DX_DECLARE_VARIABLE( bCaptureInput );
};
//------------------------------------------------------------------------------
#endif // __eggAI_h__
//------------------------------------------------------------------------------

// eggAI.cpp

//------------------------------------------------------------------------------
#include "eggAI.h"
//------------------------------------------------------------------------------
// Common AIModel implementation
//
S3DX_IMPLEMENT_AIMODEL( eggAI )
    eggAI::eggAI() { }
    eggAI::~eggAI() { }

//------------------------------------------------------------------------------
// States mapping
//
S3DX_BEGIN_STATE_MAP( eggAI )
S3DX_END_STATE_MAP( eggAI )

//------------------------------------------------------------------------------
// Event handlers mapping
//
S3DX_BEGIN_HANDLER_MAP( eggAI )
    S3DX_HANDLER( eggAI, onInit )
    S3DX_HANDLER( eggAI, onMouseMove )
    S3DX_HANDLER( eggAI, onEnterFrame )
    S3DX_HANDLER( eggAI, onCaptureInput )
    S3DX_HANDLER( eggAI, onKeyboardKeyUp )
    S3DX_HANDLER( eggAI, onKeyboardKeyDown )
S3DX_END_HANDLER_MAP( eggAI )

//------------------------------------------------------------------------------
// Variables mapping
//
S3DX_BEGIN_VARIABLE_MAP( eggAI )
    S3DX_VARIABLE( eggAI, nSpeed, S3DX_VARIABLE_TYPE_NUMBER )
    S3DX_VARIABLE( eggAI, hDynObj, S3DX_VARIABLE_TYPE_OBJECT )
    S3DX_VARIABLE( eggAI, nGravity, S3DX_VARIABLE_TYPE_NUMBER )
    S3DX_VARIABLE( eggAI, bMoveBack, S3DX_VARIABLE_TYPE_BOOLEAN )
    S3DX_VARIABLE( eggAI, nCurAngleH, S3DX_VARIABLE_TYPE_NUMBER )
    S3DX_VARIABLE( eggAI, nCurAngleV, S3DX_VARIABLE_TYPE_NUMBER )
    S3DX_VARIABLE( eggAI, nDstAngleH, S3DX_VARIABLE_TYPE_NUMBER )
    S3DX_VARIABLE( eggAI, nDstAngleV, S3DX_VARIABLE_TYPE_NUMBER )
    S3DX_VARIABLE( eggAI, bMoveForward, S3DX_VARIABLE_TYPE_BOOLEAN )
    S3DX_VARIABLE( eggAI, bCaptureInput, S3DX_VARIABLE_TYPE_BOOLEAN )
S3DX_END_VARIABLE_MAP( eggAI )
//------------------------------------------------------------------------------

好像我错过了什么

0 个答案:

没有答案