2016-04-25 123 views
-3
Object *a; 

Object c; 

Object b; 

a = &b; 

a-> function(); 

在指針'a'使用此函數之前,它指向對象'b'。如何在使用此功能後將它指向對象'c'。在指針使用函數後,如何更改指針指向的對象

+1

'a'指向'c'之前調用'函數'本身。 – Naveen

+0

對不起,我的意思是a =&b。然後我想將'a'改爲'c' –

+0

只需在函數調用之前調用函數就可以了。 – grek40

回答

0

如果您能夠接受通過幾個參數function(),你總是可以實現這樣的:

void Object::function(Object* pObject, Object& rObject) { 
    pObject = &rObject; 
} 

而且在工作的代碼,這樣使用它:

Object *a; 

Object c; 

Object b; 

a = &b;    //'a' is pointing to 'b' 

a->function(a, c); //'a' is now pointing to 'c' 

然而,從實際意義上來說,你仍然可以使用這種方式:

a = &c;