में अजीब संदर्भ गुजर रहा एक वेब देव (एक शौक के रूप खेल देव) हूँ, और मैंने देखा है अपने आप निम्नलिखित प्रतिमान कई बार का उपयोग करें। (सर्वर आर्किटेक्चर और वीडियो गेम देव काम के साथ दोनों में।) यह वास्तव में बदसूरत लगता है, लेकिन मुझे चारों ओर एक काम नहीं पता है। मैं गेम देव में एक उदाहरण दूंगा, क्योंकि यह वह जगह है जहां मैंने हाल ही में इसे देखा था। यह एक आरपीजी है जिसे मैं काम कर रहा हूं। हर बार जब युद्ध शुरू होता है, तो CombatEngine मुकाबला के दो पक्ष बनाता है। हर योद्धा एक ArtificialIntelligence उद्देश्य यह है कि दिए गए योद्धा है, जो खिलाड़ियों के लिए ले जाता है हुक्म के प्रभारी जो एक स्पष्ट आदेश प्राप्त नहीं होता है के साथ संबद्ध सेट:वर्ग निर्माण
public class Combatant {
ArtificialIntelligence ai = null;
public Combatant()
{
// Set other fields here.
this.ai = new ArtificialIntelligence(this);
}
}
यहाँ मुझे पसंद नहीं है क्या करना है: भीतरी क्षेत्र क्योंकि यह आदेश उचित कार्रवाई हुक्म करने के लिए योद्धा क्षेत्रों में से कुछ की जरूरत है (ArtificialIntelligence), निर्माण के दौरान एक योद्धा ले जाता है। तो, सुविधा के लिए, मैं लड़ाके ArtificialIntelligence वस्तु के लिए एक आर्ग के रूप में पारित करने के लिए एक संदर्भ के रखने के लिए, लेकिन यह है कि वस्तु ai वस्तु ही का संदर्भ होता है! यह इस अजीब रिकर्सन बनाता है, लेकिन मुझे नहीं पता कि इसके आसपास कैसे काम करना है। ऐ वस्तु क्षेत्रों कि लड़ाके के लिए विशिष्ट हैं की एक अच्छा सौदा की जरूरत है, ताकि कारण है कि मैं संपूर्ण वस्तु में पारित कर दिया है, लेकिन मुझे पसंद नहीं है कैसे वस्तु तो ऐ क्षेत्र है जो overlying लड़ाके में निहित है के लिए संदर्भ शामिल हैं क्षेत्र, जो अतिव्यापी एआई कक्षा में निहित है। क्या यह बुरा अभ्यास है, या मैं बस इसे सोचने पर हूं?
क्या आपको स्टैक ओवरफ्लो त्रुटि मिल रही है? मुझे संदेह है, और यदि नहीं, तो यहां कोई संदर्भ नहीं है, बस संदर्भ पास हो रहा है। मुझे लगता है कि आपके यहां कोई समस्या नहीं है। –
वूप्स, मैं व्यापार द्वारा गणितज्ञ हूं, इसलिए मेरी कुछ शब्दावली की कमी है। आप सही हैं, यह सिर्फ संदर्भ पास है। क्या वह अभी भी एक गैर मुद्दा माना जाएगा? क्या इस रूप में घोंसला संदर्भों के लिए यह बुरा अभ्यास नहीं है? और अपने प्रश्न का उत्तर देने के लिए, मुझे कोई त्रुटि नहीं मिल रही है। मैंने सोचा कि यह बुरा लग रहा था, और राय प्राप्त करना चाहता था। – Sal