I understand that objects initialized with 'new' are allocated from the heap, but what about their members? For example, I have class A:
class A
{
private: int a; //here "a" should be on stack
};
Then I have object A defined in following code respectively
A a;
A *ap = new A();
Now the first statement places a on stack and ap will be in the heap, but how about a.a and ap->a? Are they with their parent objects?