Chinaunix首页 | 论坛 | 博客
  • 博客访问: 37481
  • 博文数量: 20
  • 博客积分: 1400
  • 博客等级: 上尉
  • 技术积分: 250
  • 用 户 组: 普通用户
  • 注册时间: 2009-07-29 17:42
文章分类

全部博文(20)

文章存档

2011年(1)

2010年(3)

2009年(16)

我的朋友

分类: C/C++

2010-03-28 21:13:01

#pragma once

struct    sItemInfo
{
    enum
    {
        MaxItemCount = 30,
    };

    int nCurCount;
    struct
    {
        int    nItemCode;
        int nItemCount;
    }data[MaxItemCount];    
};

class CLuaStruct
{
private:
    union
    {
        sItemInfo item;
    }m_data;

public:
    CLuaStruct(void);
    ~CLuaStruct(void);

    // 压入一个元组(nItemCode,nItemCount)

    void PushItem(const int nItemCode,const int nItemCount);

    // 清除数据

    void Clear() { memset(&m_data,0,sizeof(m_data));}

    // 获取道具信息

    const sItemInfo& GetItemInfo()const { return m_data.item;};
    
};

extern CLuaStruct g_luaStruct;


#include "StdAfx.h"
#include "LuaStruct.h"

CLuaStruct g_luaStruct;

CLuaStruct::CLuaStruct(void)
{
}

CLuaStruct::~CLuaStruct(void)
{
}

void CLuaStruct::PushItem(const int nItemCode,const int nItemCount)
{
    if (m_data.item.nCurCount < sItemInfo::MaxItemCount)
    {
        m_data.item.data[m_data.item.nCurCount].nItemCode = nItemCode;
        m_data.item.data[m_data.item.nCurCount].nItemCount = nItemCount;
        m_data.item.nCurCount++;
    }
    else
    {
        // output error.

    }
}


阅读(449) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~