2010-07-23 14 views
8

सी ++ में, जब आपके पास कोई ऐसा फ़ंक्शन होता है जो ऑब्जेक्ट का संदर्भ लेता है, तो आप ऑब्जेक्ट पॉइंटर को कैसे पास कर सकते हैं?फ़ंक्शन करने के लिए पॉइंटर्स पास करना जो संदर्भ लेता है?

के रूप में इतना:

Myobject * obj = new Myobject(); 

somefunc(obj); //-> Does not work?? Illegal cast?? 

somefunc(Myobject& b) 
{ 
// Do something 
} 

उत्तर

10
बस संकेतक भिन्नता

, lvalue में जिसके परिणामस्वरूप:

somefun(*obj); 
3

तुम सिर्फ यह करना है:

somfunc(*obj); 
संबंधित मुद्दे