मैं C++प्रवेश व्युत्पन्न एक आधार वर्ग सूचक
एक सरल कंसोल खेल बनाने रहा हूँ के साथ वर्ग के सदस्यों मैं अगर मैं एक सूचक है कि की ओर इशारा करते है का उपयोग करते हुए 'entPlayer' वर्ग के सदस्यों का उपयोग कर सकते जानना चाहते हैं आधार वर्ग ('इकाई'):
class Entity {
public:
void setId(int id) { Id = id; }
int getId() { return Id; }
protected:
int Id;
};
class entPlayer : public Entity {
string Name;
public:
void setName(string name) { Name = name; }
string getName() { return Name; }
};
Entity *createEntity(string Type) {
Entity *Ent = NULL;
if (Type == "player") {
Ent = new entPlayer;
}
return Ent;
}
void main() {
Entity *ply = createEntity("player");
ply->setName("Test");
ply->setId(1);
cout << ply->getName() << endl;
cout << ply->getId() << endl;
delete ply;
}
मैं कैसे ply-> setName आदि फोन करने में सक्षम हो सकता है?
या
तो यह संभव है कि जिस तरह से नहीं है, क्या एक बेहतर तरीका हो सकता है?
क्षमा करें, मुझे आपके कोड स्वरूपण को संपादित करना था। खाली लाइनों ने आपका कोड वास्तव में लंबा बना दिया! आपके कोड के बारे में एक और छोटी टिप्पणी: एक सतत नामकरण सम्मेलन के साथ छड़ी उदा। AllClassNamesLikeThis, और पैरामीटर_नाम_like_थिस। एक और नाइट: आप बाद में बट में अपने आप को "ent" जैसे संक्षेप में लात मार देंगे। मैं ईमानदारी से यह नहीं बता सकता कि एंटरप्लेयर क्या होना चाहिए। मुझे लगता है कि आपका मतलब सिर्फ "प्लेयर" है, या यदि आप वर्बोज़ "प्लेयरइन्टिटी" महसूस कर रहे हैं। – allyourcode