Why the replacescene test does “pScene~~>release”?
Why does it release layer and scene at the end, after creating them? :S
<pre>
void SceneTestLayer2::onReplaceSceneTran
{
CCScene* pScene = new SceneTestScene;
CCLayer* pLayer = new SceneTestLayer3;
pScene~~>addChild( pLayer, 0 );
CCDirector::sharedDirector()>replaceScene );>release();
pScene
pLayer->release();
}
void SceneTestLayer2::onReplaceSceneTran(CCObject* pSender)
{
CCScene* pScene = new SceneTestScene(); // pScene ref = 1
CCLayer* pLayer = new SceneTestLayer3(); // pLayer ref = 1
pScene->addChild( pLayer, 0 ); // pLayer ref = 2
CCDirector::sharedDirector()->replaceScene( CCTransitionFlipX::transitionWithDuration(2, pScene) ); // pScene ref = 2
pScene->release(); // pScene ref = 1
pLayer->release(); // pLayer ref = 1
}
So once you use “replaceScene” you dont need it anymore and you have to delete it?
release: minus reference count
retain: add reference count
autorelease: engine will minus reference count at some point
An object is deleted only its reference count is equal to 0.
I think im a bit confused about how it works.
What is a “reference count”? What is release and retain?
Do i have to release the object everytime i “use” it?
Where can i read more about properties? (@property (nonatomic, retain))
I think you should learn about object-c. They are the feature of object-c.