initialization of a reference in a dynamically allocated structure
===

Anyone knows how to initialize a reference in a dynamically allocated structure?
or why this doesnt work?

    #include <stdio.h>
    #include <stdlib.h>
    
    class A
    {
    	
    };
    
    struct S
    {
    	A& a;
    };
    
    int main()
    {
    	A a;
    
    	S* s=new S;
    	s->a=a;
    	
    	printf("a addr:%p\n", &a);
    	printf("s->a addr:%p\n", &(s->a));
    delete s;
    	return 0;
    }

output:

    a addr:0x7fff95b65aaf
    s->a addr:(nil)

