📄 itemrack.cpp
字号:
//////////////////////////////////////////////////////////////////////////////// Filename : ItemRack.cpp// Written By : excel96// Description ://////////////////////////////////////////////////////////////////////////////#include "Assert.h"#include "ItemRack.h"#include "Item.h"//////////////////////////////////////////////////////////////////////////////// class ItemRack member methods//////////////////////////////////////////////////////////////////////////////ItemRack::ItemRack(){ m_ppItem = NULL; m_nSize = 0;}ItemRack::ItemRack(int size){ // 器牢磐 硅凯 且寸 m_ppItem = new (Item*)[size]; Assert(m_ppItem != NULL); // 器牢磐 硅凯 檬扁拳 for (int i=0; i<size; i++) m_ppItem[i] = NULL; m_nSize = size;}ItemRack::~ItemRack(){ if (m_ppItem != NULL) { for (int i=0; i<m_nSize; i++) SAFE_DELETE(m_ppItem[i]); SAFE_DELETE_ARRAY(m_ppItem); }}void ItemRack::init(int size){ // 刚历 勒带 郴侩阑 瘤况霖促. if (m_ppItem != NULL) { for (int i=0; i<m_nSize; i++) SAFE_DELETE(m_ppItem[i]); SAFE_DELETE_ARRAY(m_ppItem); } // 器牢磐 硅凯 且寸 m_ppItem = new (Item*)[size]; Assert(m_ppItem != NULL); // 器牢磐 硅凯 檬扁拳 for (int i=0; i<size; i++) m_ppItem[i] = NULL; m_nSize = size;}bool ItemRack::isFull(void) const{ // 酒捞袍捞 窍唱扼档 绝栏搁 菜 蛮 巴篮 酒聪瘤. for (int i=0; i<m_nSize; i++) if (m_ppItem[i] == NULL) return false; return true;}bool ItemRack::isEmpty(void) const{ // 酒捞袍捞 窍唱扼档 乐栏搁 后 巴篮 酒聪瘤. for (int i=0; i<m_nSize; i++) if (m_ppItem[i] != NULL) return false; return true;}bool ItemRack::isExist(BYTE index) const{ // 肋给等 牢郸教 八刘 Assert(verifyIndex(index)); // 酒捞袍捞 绝促搁 false, 乐促搁 true return (m_ppItem[index] == NULL ? false : true);}void ItemRack::insert(BYTE index, Item* pItem){ // 肋给等 牢郸教 八刘 Assert(verifyIndex(index)); // 刚历 酒捞袍捞 甸绢乐绰瘤 八荤 Assert(m_ppItem[index] == NULL); // 笼绢持绰促. m_ppItem[index] = pItem;}void ItemRack::remove(BYTE index){ // 肋给等 牢郸教 八刘 Assert(verifyIndex(index)); // 器牢磐 瘤款促. m_ppItem[index] = NULL;}Item* ItemRack::get(BYTE index){ // 肋给等 牢郸教 八刘 Assert(verifyIndex(index)); return m_ppItem[index];}void ItemRack::clear(void) { for (int i=0; i<m_nSize; i++) SAFE_DELETE(m_ppItem[i]);}BYTE ItemRack::getFirstEmptySlot(void) const{ // 贸澜何磐 八祸茄促. for (int i=0; i<m_nSize; i++) if (m_ppItem[i] == NULL) return i; return m_nSize;}BYTE ItemRack::getLastEmptySlot(void) const{ // 第何磐 八祸茄促. for (int i=m_nSize-1; i>=0; i--) if (m_ppItem[i] == NULL) return i; return m_nSize;}bool ItemRack::verifyIndex(BYTE index) const{ if (index >= m_nSize) return false; return true;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -