неожиданный вызов copyWithZone c ++ cocos2d

У меня есть некоторые проблемы.

Я сделал некоторый интерфейс (абстрактный класс в C ++). Реализовал это в моем классе (тоже из CCObject).
В третьем классе я пытаюсь вызвать метод интерфейса и получил SIGABORT. Вот код

 //interface classclass CallBackInterface
{
public:
virtual void SomeMethod() = 0;
};

//my class that implement the interface
class MyClass : public CallBackInterface, public CCObject
{
public:
void SomeMethod(){/*some realization*/};
};

//class that invoke the SomeMethodclass CallBacker()
{
public:
CallBackInterface* callBackObject;
};

//main codeCallBacker* callBacker = new CallBacker();
MyClass* myClass = new MyClass();
callBacker->callBackObject = myClass;

/*
this string generate unexpected invoke of copyWithZone method CCObject's class
with SIGABORT. */

callBacker->callBackObject->SomeMethod();

/*
In debugger mode I see that SomeMethod don't invoke (debugger don't  go                                into it). Here the copyWithZone*/

CCObject* CCCopying::copyWithZone(CCZone *pZone)
{
CC_UNUSED_PARAM(pZone);
CCAssert(0, "not implement"); <<- here is SIGABORT
return 0;
}

copyWithZone вызов сбивает мое приложение

0

Решение

class CallBackInterface : public CCObject
{
public:
virtual void SomeMethod() = 0;
};

class MyClass : public CallBackInterface
{
void SomeMethod(){}
};

Попробуй это! Я встречал ту же проблему раньше.

0

Другие решения

Других решений пока нет …