यह मानते हुए कि मुझे C (कोई C ++ या ऑब्जेक्ट ओरिएंटेड कंपाइलर) का उपयोग नहीं करना है और मेरे पास डायनेमिक मेमोरी एलोकेशन नहीं है, मैं कुछ तकनीकों का उपयोग कर सकता हूं जिन्हें मैं क्लास को लागू करने के लिए उपयोग कर सकता हूं, या क्लास का एक अच्छा सन्निकटन? क्या हमेशा "क्लास" को एक अलग फ़ाइल में अलग करना एक अच्छा विचार है? मान लें कि हम एक निश्चित संख्या में उदाहरणों को मानकर या प्रत्येक वस्तु के संदर्भ को संकलित समय से पहले स्थिर मानकर स्मृति का प्रचार कर सकते हैं। इस बात के लिए बेझिझक विचार करें कि मुझे किस ओओपी अवधारणा को लागू करने की आवश्यकता है (यह अलग-अलग होगी) और प्रत्येक के लिए सबसे अच्छी विधि का सुझाव दें।
प्रतिबंध:
- मुझे C का उपयोग करना है और OOP का नहीं क्योंकि मैं एक एम्बेडेड सिस्टम के लिए कोड लिख रहा हूं, और C में कंपाइलर और preexisting कोड है।
- कोई डायनेमिक मेमोरी एलोकेशन नहीं है क्योंकि हमारे पास यथोचित मेमोरी नहीं है कि अगर हम डायनामिकली एलोकेशन शुरू करते हैं तो हम यथोचित रूप से रन आउट नहीं होंगे।
- संकलक हम साथ काम करते हैं, फ़ंक्शन पॉइंटर्स के साथ कोई समस्या नहीं है
apr_
और GLib उन्हें g_
एक नाम स्थान बनाने के लिए उपसर्ग करता है ) और अन्य आयोजन कारक OOP के बिना। यदि आप किसी भी तरह से एप्लिकेशन का पुनर्गठन करने जा रहे हैं, तो मैं कुछ समय के लिए एक अधिक रख-रखाव प्रक्रियात्मक संरचना के साथ आने की कोशिश करने पर विचार करूंगा।