मैं एक कक्षा लिख रहा हूं जो एक विरासत सी एपीआई को लपेटता है जो हार्डवेयर डिवाइस को नियंत्रित करता है। एक सरलीकृत उदाहरण में, मेरे पास कुछ ऐसा हो सकता है:क्या सदस्य कार्य "कॉन्स्ट" होना चाहिए यदि वे तार्किक स्थिति को प्रभावित करते हैं, लेकिन बिटवाई स्थिति नहीं?
class device
{
public:
void set_request(int data) { legacy_set_req(p_device, data); }
int get_response() const { return legacy_get_rsp(p_device); }
private:
device_handle_t *const p_device;
};
कक्षा में कोई बिटवाई स्थिति नहीं है; इसलिए, मैं set_request()
को const
के रूप में घोषित करना चुन सकता हूं, और संकलक इससे खुश होंगे। हालांकि, एक अर्थपूर्ण दृष्टिकोण से, क्या यह सही दृष्टिकोण होगा, यह देखते हुए कि यह ऑब्जेक्ट के व्यवहार को प्रभावित करता है? (अर्थात समझाया हार्डवेयर डिवाइस बहुत ज्यादा करता राज्य है।)
कोई – KitsuneYMG