If a person eats a cracker that has cheese on top of it, he recites only the Beracha of "Mezonot" over the cracker, and this Beracha covers both the cracker and the cheese. Since the cheese is considered "Tafel" ("subordinate," or secondary) to the cracker, one recites only a Beracha over the cracker, and this Beracha covers both foods.
The Mishna Berura (Rav Yisrael Meir Kagan of Radin, 1839-1933) writes (168:46) that even if a small bit of cheese is left over on its own, after one has eaten the entire cracker, he does not need to recite a Beracha on that small bit of cheese. Since the cheese had been covered by the Beracha recited over the cracker, it does not require a separate Beracha, even though it is now being eaten on its own, without the cracker.
However, if one wishes to eat a different piece of cheese, he must recite "She’ha’kol" over the new piece of cheese. Even if the new piece of cheese was present on the table when he recited "Mezonot" over the cracker, he must nevertheless recite a separate Beracha over the new piece, since it was not on the cracker, and thus it was not covered by the Beracha recited over the cracker.
Secondly, as noted by Hacham David Yosef (contemporary) in Halacha Berura, and by Rav Yisrael Bitan (contemporary), the Mishna Berura’s ruling applies only if a small bit of cheese remains after one completed eating the cracker. If, however, a significant piece of cheese remains, then it cannot be considered secondary to the cracker, and therefore one would need to recite "She’ha’kol" over the remaining cheese.
Summary: One who eats a cracker with cheese on top recites only "Mezonot," and this Beracha covers both the cracker and the cheese. If a small bit of cheese remains after he finished eating the cracker, he eats the remaining cheese without a Beracha, but if the amount of remaining cheese is substantial, then he must recite "She’ha’kol" before eating the remaining cheese.