Ups, du hast Recht. Das müsste passen. Ich habe außerdem nicht genau hingeguckt und gedacht, dass die query-Methode auch den klasseninternen Result-Speicher nutzen würde.

Sorry, vergiss den Einwand.
Was die Performance angeht: Deine Klasse wird sicherlich über einen längeren Zeitraum (bis Scriptende bzw. bis zur nächsten Query) mehr Ressourcen benötigen (vermutlich auch auf dem MySQL-Server, denn irgendwas wird das free() ja tun

) als die rein sequentielle Abarbeitung mit store, free, store, free, store, free. Ich habe versucht, dazu Informationen zu finden, aber sowas ist irgendwie traditionell immer schwierig.
Ich bleibe bei meiner Einschätzung, dass es wahrscheinlich nicht wirklich ins Gewicht fallen dürfte. Allerdings ist diese Einschätzung leider nicht sonderlich fundiert.
Edit: Im Zweifel wäre es ja kein Thema, noch eine freeAll-Methode hinzuzufügen.