Sir Roger Moore thinks Daniel Craig is the best actor to have portrayed 007.

The 84-year-old star - who played James Bond between 1973 and 1985 - says Daniel gives the best performance out of any actor to have ever played the British secret agent and is a fan of his athletic build.

Roger writes in his book 'Bond On Bond': ''I loved 'Casino Royale' and Daniel Craig.

''He is a wonderful actor, certainly the best actor to play Bond. (He has) the best build of any Bond.''

The veteran actor wasn't a fan of the 2008 Bond film 'Quantum of Solace' which he branded as ''a long, disjointed commercial'', but is hopeful that the upcoming 'Skyfall' chapter will restore his faith in the franchise.

He added: ''I believe that 'Skyfall' is going to have a lot more humour in it than 'Quantum of Solace' did, something I'll be pleased to see.''

Daniel recently said that he plans to continue as Bond for as long as possible after the 23rd instalment, joking that he'll ''keep going until they tell [me] to stop''.

He said: ''I know there'll be someone after me, and hopefully someone after them - I'm just trying to keep [the franchise] going.''

James Bond has been portrayed by the likes of Sean Connery, Timothy Dalton and Pierce Brosnan in the past.

'Skyfall' is scheduled for release in the UK on October 26.