मैं सी और struct
एस का उपयोग करता हूं जहां एक संरचना में सदस्य हो सकते हैं लेकिन कार्य नहीं। सादगी के लिए मान लें कि मैं स्ट्रिंग के लिए एक संरचना बनाना चाहता हूं जिसे मैं नाम देता हूं str
और मैं ऐसा करने में सक्षम होना चाहता हूं str.replace(int i, char c)
जहां i
स्ट्रिंग का सूचकांक है और c
चरित्र को स्थिति में बदलने के लिए चरित्र है i
। क्या यह कभी संभव नहीं होगा क्योंकि संरचना में कार्य नहीं हो सकते हैं या फिर भी कुछ तरीका है जिससे हम इस व्यवहार को लागू कर सकते हैं और नकल कर सकते हैं कि एक संरचना में एक (सरल) फ़ंक्शन हो सकता है जो वास्तव में केवल एक नई संरचना के लिए खुद को कॉपी करना है और इसे अपडेट करना है खेतों, जो यह कर सकता है?
तो replace
इस संरचना का तीसरा सदस्य हो सकता है जो एक नई संरचना को इंगित करता है जिसे एक्सेस या इसके समान होने पर अपडेट किया जाता है। क्या यह किया जा सकता है? या वहाँ कुछ बनाया या कुछ सिद्धांत या प्रतिमान है जो मेरे इरादे को रोकता है?
पृष्ठभूमि यह है कि मैं सी कोड लिख रहा हूं और मैं खुद को उन कार्यों को फिर से करना चाहता हूं जिन्हें मैं जानता हूं कि ओओपी भाषाओं में पुस्तकालय निर्मित हैं और ओआरओपी तार और आदेशों में हेरफेर करने का एक अच्छा तरीका होगा।
str.replace(&str, i, c)
किसी भी तरह समाप्त हो जाएंगे । C ++ this
पॉइंटर के गुजरने को स्वचालित करता है , निश्चित रूप से।