0
我有什麼是兩班問題處理利弊REF一類內的另一個
//class A is a kind of config-class which have configuration details
//for class B
class A{
//....
};
class B{
public:
B(A const& _a)
:a(_a){}
private:
A const& a;
};
直到此時一切都很好。
現在我想是B::configure(A const& _a)
函數,這樣我可以的configuration class A
參考動態傳遞到class B
其將被分配給成員變量a
。但我無法更改成員變量B::a
,因爲它是const&
。
什麼可以解決?
我認爲@Seth卡內基的做法是更好的,我應該以這種方式使用指針來class A
內class B
:
class B{
public:
B(A const& _a)
:a(_a){}
configure(A const& _a)
{ a = &_a; }
private:
A const* a;
};
您想更改成員引用引用的對象的值,或者您希望成員引用引用另一個對象嗎?無論哪種情況,你只能做前者而不是後者。 –