Request for member ‘bar’ in ‘aFoo’, which is of non-class type ‘Foo*’
From Cppsyntax
You can get this error if you use a "." where you should use a "->" to connect a method to an instance.
Use dots if the thing on the left-hand-side is an object; use an arrow if it is a pointer to an object. For example:
WRONG
Foo *fooPtr = new Foo(); fooPtr.bar(3); // pointers use ->
RIGHT
Foo *fooPtr = new Foo(); fooPtr->bar(3);
WRONG
void blort(Foo aFoo) { aFoo->bar(3); // objects use . }
RIGHT
void blort(Foo aFoo) { aFoo.bar(3); }