Scene::init() 什么情况下被调用的?

自定义定一个场景, 继承自 cocos2d::Scene

在applicationDidFinishLaunching()中, 运行场景时,我试了两种方式:
1
auto scene = SceneTest::create();
director->runWithScene(scene);
2
auto scene = new SceneTest();
director->runWithScene(scene);

第一种, 场景根本没有运行起来,程序一片漆黑, SceneTest::init(), SceneTest::onEnter() 都没有被调用.
第二种, SceneTest::onEnter() 被调用了, 但是SceneTest::init() 没有被调用 。

是什么原因呢?

找到原因了,
应该这样:

           auto scene = new SceneTest();
           if(scene) {
                   scene->init();
                   director->runWithScene(scene);
           }