नीचे कहा जाता है कि सार्वजनिक सदस्यों के रूप में पहले/दूसरे होने के बाद नीचे बेहतर कहा जाता है। मेरा मानना है कि यह लगभग उतना ही बुरा है। यदि आप कक्षा के बाहर एक निजी चर का उपयोग करने का कोई तरीका दे रहे हैं तो बिंदु क्या है? नहीं कार्योंसदस्य चर के खराब अभ्यास का संदर्भ वापस कर रहा है?
T First(); void(or T) First(const T&)
नमूना होना चाहिए: बड़ा संरचनाओं
// Example 17-3(b): Proper encapsulation, initially with inline accessors. Later
// in life, these might grow into nontrivial functions if needed; if not, then not.
//
template<class T, class U>
class Couple {
Couple() : deleted_(false) { }
T& First() { return first_; }
U& Second() { return second_; }
void MarkDeleted() { deleted_ = true; }
bool IsDeleted() { return deleted_; }
private:
T first_;
U second_;
bool deleted_;
};
+1, लेकिन एक्सेसर्स प्रदान करने के लिए एक काउंटर तर्क है: आप कॉल में उपकरण जोड़ सकते हैं और इससे कोड को ऑब्जेक्ट में अपडेट किया जा रहा है, या मुद्दों का पता लगाने के लिए डीबगर संलग्न करना आसान बनाता है। –
आपके लिए जानकारी उन उदाहरणों के बारे में बात कर रही थी, जिनमें निजी सदस्य हैं इसलिए 'बूल हटाया गया'; मुझे पीओडी –
@ डेविड पसंद है: मैं टी टी()/शून्य सेट (टी) 'में एक्सेसर्स के खिलाफ नहीं हूं, जिसमें आप प्रभावी रूप से अपने मूल्यों के परिवर्तनों को ट्रैक कर सकते हैं, आलसी गणना और अन्य चीजों को प्रदान कर सकते हैं, लेकिन 'टी और एक्सेस() 'में केवल रोचक टिडबिट" ट्रेस "है कि एक एक्सेस बनाया गया था, जो तालिका में ज्यादा नहीं लाता है। –