메뉴 건너뛰기

자유롭게 이야기를 적는 공간

리스너로 this를 넘겨줬는데
터치로 인해 실행되는 순간에 셀렉터에선 포인터 주소가 4바이트 밀려 있음...
이건 도대체 무슨 문제인가?

class CommandButton
{
public:
virtual void createButton(cocos2d::CCNode* node, int x, int y, int tag) = 0;
};

class KillMonster : public CommandButton, public cocos2d::CCObject
{
private:
MainMenuInterface* main;

public:
void execute(CCObject* pSender);
void createButton(cocos2d::CCNode* node, int x, int y, int tag);
KillMonster(MainMenuInterface* m);
};

////////////////////////////////////////////////////////////////////////////////////////////////////////
//Kill Monster

void KillMonster::execute(CCObject* pSender)
{
this->main->KillMember(); // <- 어째서인지 이 때는 this가 0x024afa1c. 4바이트 밀려버렸다!!
}

void KillMonster::createButton(cocos2d::CCNode* node, int x, int y, int tag)
{
CCMenuItemImage* menu_item = CreateMenuItem(node, "images/button.png", "images/button.png", 
                                                                                 "Kill", x, y, 32, ccc3(255, 255, 255), 10, tag);
if(menu_item)
{
menu_item->setTarget(this, menu_selector(KillMonster::execute)); // <- 이 순간에는 this가 0x024afa18임
}
}

KillMonster::KillMonster(MainMenuInterface* m)
:main(m)
{
}

조회 수 :
610
등록일 :
2013.09.09
20:42:28 (*.75.88.173)
엮인글 :
게시글 주소 :
https://hondoom.com/zbxe/index.php?mid=free&document_srl=703159

똥똥배

2013.09.09
21:01:41
(*.75.88.173)
해결

class CommandButton : public cocos2d::CCObject
{
public:
virtual void execute(CCObject* pSender) = 0;    //<- 이게 없는 게 문제였음
virtual void createButton(cocos2d::CCNode* node, int x, int y, int tag) = 0;
};

class KillMonster : public CommandButton
{
private:
MainMenuInterface* main;

public:
void execute(CCObject* pSender);
void createButton(cocos2d::CCNode* node, int x, int y, int tag);
KillMonster(MainMenuInterface* m);
};

Kadalin

2013.09.10
02:03:58
(*.206.156.3)

....내가 방금 뭘 본 거지.

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 (대피소) 혼돈과 어둠의 디스코드 노루발 2023-09-05 390
공지 글 작성을 위해서는 회원 가입이 필요합니다. 노루발 2016-02-22 4947
13847 똥똥배 대회 결과 발표가 늦어질 거 같습니다. 똥똥배 2013-09-16 428
13846 제 블로그의 Love2D 글 여기로 옮겨도 될까요? [6] 노루발 2013-09-16 420
13845 다음 똥똥배 대회에는 노력상이라도 만들어 볼까... [8] 똥똥배 2013-09-15 392
» 도대체 뭐가 문제인거야! [2] 똥똥배 2013-09-09 610
13843 대한민국을 지키는 가장 높은 힘! [4] 규라센 2013-09-07 420
13842 세상이 많이 좋아졌군요 [1] 네코이름 2013-09-07 552
13841 애니메이션 보면서 프로그래밍 하니까 잘 되는 거 같습니다. [2] 똥똥배 2013-09-01 432
13840 제13회 똥똥배 대회 채점양식 file 똥똥배 2013-09-01 567
13839 제13회 똥똥배 대회 접수도 마감이군요. 똥똥배 2013-09-01 488
13838 툴 만들고 싶은 유혹은 강한 듯 똥똥배 2013-09-01 355
13837 CocoStudio라는 게 있었군요. file 똥똥배 2013-08-30 1671
13836 흥크립트를 오픈 프로젝트로 해볼까요 [3] 똥똥배 2013-08-27 413
13835 요즘 근황 (게임 개발과 관계된 것을 중심으로) [1] 王코털 2013-08-21 455
13834 Final Boss Shooting 무료로 풀었습니다. 똥똥배 2013-08-21 477
13833 cocos2d-x에 retain이란 게 있었구나. 똥똥배 2013-08-20 505
13832 이 사이트는 언제부터 사람들이 뚝 떨어지기 시작했나요? [2] rkddl111 2013-08-20 528
13831 모바일 크롬으로 글쓰기 하면 엔터가 안먹히더군요 [1] rkddl111 2013-08-18 468
13830 게임공부 쉽지 않네요. [2] 화이트붐 2013-08-13 476
13829 당황스럽다. [3] ㅂㅈㄷㄱ 2013-08-12 427
13828 오.. 요즘 조용해서 잊고 있었는데. [1] 화이트붐 2013-08-11 483