動的に割り当てられた構造で参照を初期化する方法を知っている人はいますか?またはなぜこれが機能しないのですか?
#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;
}
出力:
a addr:0x7fff95b65aaf
s->a addr:(nil)