我遇到了内存违规错误,但我不知道它的来源。 我的问题是:在构造函数初始化列表中,我是否可以获得类成员的地址,以便将其传递给需要引用它的对象?
例如:
class A
{
};
class ReferencesA
{
A * const pA;
ReferencesA( A * ptrA ) : pA( ptrA ) { }
};
class B
{
A a;
ReferencesA referencesA;
B() : referencesA( & a ) { }
};
在构造函数初始化列表中使用& a
是安全的吗?我觉得应该是安全的,但事情并不总是如我们所期望的那样。
谢谢。