Purely in terms of belly hold space the 777 has more capacity (containers) than the 747 and has a much reduced fuel burn. Fill a 747 with cabin freight and may make more sense give fuel prices. HOWEVER, given BA has hedged most of its fuel bill at a much higher price than todays cost, it presumably makes more sense to use the more efficient aircraft (A350/777/787).
The article below is a great summary that compares the pros and cons of various passenger aircrraft and their capacities.
http://www.lcfconversions.com/uploads/news_23.pdf