What is the difference between Update and the Schedule Selector?

Hello right now I want to undestrand something about the schedule selector and the update function in cocos2d-x.

Right now I have something like this

void GameScene::init()
{
  this->schedule(schedule_selector(GameWhackIt::tick));
}

void GameScene::tick(float)
{
_timeElapse += dt;
}

My game works fine using this, but if I change this to the update function it works completely different. The schedule selector what time takes to refresh I’m pretty sure it’s not every frame right ?

void GameScene::update(float dt)
{
CCLOG(“Time elapse %f”, dt)
}

from the documentation:
this->schedule(CC_SCHEDULE_SELECTOR(MyNode::TickMe), 0, 0, 0);
Parameters :
selector The SEL_SCHEDULE selector to be scheduled.
interval Tick interval in seconds. 0 means tick every frame. If interval = 0, it’s recommended to use scheduleUpdate()

So if you want to call the update function every frame (that is 60 times per second by default) you call
this->scheduleUpdate() and then override the scenes update function

i would recommend to you to use the default update function unless you need to fine-tune some physics